init do end
- fun colorize(elements: Collection[E]): Map[E, Int] do
+ fun colorize(elements: Set[E]): Map[E, Int] do
# tag each element as part of group core, crown or border
for e in elements do
tag_element(e)
fun do_property_coloring do
# classes coloration
+ var mclasses = new HashSet[MClass].from(modelbuilder.model.mclasses)
self.class_coloring = new ClassColoring(mainmodule)
- class_coloring.colorize(modelbuilder.model.mclasses)
+ class_coloring.colorize(mclasses)
# methods coloration
var method_coloring = new MethodColoring(self.class_coloring)
if modelbuilder.toolcontext.opt_bm_typing.value then
self.class_coloring = new NaiveClassColoring(mainmodule)
- self.class_coloring.colorize(modelbuilder.model.mclasses)
+ self.class_coloring.colorize(mclasses)
end
# vt coloration
init(mainmodule: MModule, mmbuilder: ModelBuilder, runtime_type_analysis: RapidTypeAnalysis) do
super
- var mclasses = new HashSet[MClass]
- mclasses.add_all(mmbuilder.model.mclasses)
+ var mclasses = new HashSet[MClass].from(mmbuilder.model.mclasses)
# classes coloration
if modelbuilder.toolcontext.opt_phmod_typing.value then
for mclass in mclasses do
self.class_ids[mclass] = self.class_ids.length + 1
end
- self.class_colors = class_coloring.colorize(modelbuilder.model.mclasses)
+ self.class_colors = class_coloring.colorize(mclasses)
self.class_tables = class_coloring.build_type_tables(modelbuilder.model.mclasses, class_colors)
end
end