nitc :: Model :: get_avg_linenumber
fun get_avg_linenumber(model_builder: ModelBuilder): Float do
var methods_analyse_metrics = new Counter[MClassDef]
var filter = new ModelFilter
for mclassdef in collect_mclassdefs(filter) do
var result = 0
var count = 0
for mmethoddef in call_analyze_methods(mclassdef,model_builder, filter) do
result += mmethoddef.line_number
if mmethoddef.line_number == 0 then continue
count += 1
end
if not mclassdef.collect_local_mproperties(filter).length != 0 then continue
if count == 0 then continue
methods_analyse_metrics[mclassdef] = (result/count).to_i
end
return methods_analyse_metrics.avg + methods_analyse_metrics.std_dev
end
src/metrics/codesmells_metrics.nit:413,2--429,4