nitc :: CNOPC :: defaultinit
# MClass metric: Number of Class Parents
#
# Count only absrtract, concrete and extern classes
class CNOPC
super MClassMetric
super IntMetric
redef fun name do return "cnopc"
redef fun desc do return "number of class_kind parent"
redef fun collect(mclasses) do
for mclass in mclasses do
var count = 0
for parent in mclass.in_hierarchy(mainmodule).direct_greaters do
if parent == mclass then continue
if parent.kind == abstract_kind or parent.kind == concrete_kind or parent.kind == extern_kind then
count += 1
end
end
values[mclass] = count
end
end
end
src/metrics/inheritance_metrics.nit:289,1--310,3