# Collect attributes of a type in the order of their init
fun collect_attr_propdef(mtype: MType): Array[AAttrPropdef]
do
var cache = self.collect_attr_propdef_cache
if cache.has_key(mtype) then return cache[mtype]
var res = new Array[AAttrPropdef]
var cds = mtype.collect_mclassdefs(self.mainmodule).to_a
self.mainmodule.linearize_mclassdefs(cds)
for cd in cds do
res.add_all(modelbuilder.collect_attr_propdef(cd))
end
cache[mtype] = res
return res
end
src/interpreter/naive_interpreter.nit:660,2--675,4