Property definitions

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