+# An element of a class or an instance table
+# Such an elements represent method function pointers, attribute values, etc.
+abstract class TableElt
+special AbsTableElt
+ # Is the element conflict to class `c' (used for coloring)
+ fun is_related_to(c: MMLocalClass): Bool is abstract
+
+ # Number of sub-elements. 1 if none
+ fun length: Int do return 1
+
+ # Access the ith subelement.
+ fun item(i: Int): TableElt do return self
+
+ # Return the value of the element for a given class
+ fun compile_to_c(v: GlobalCompilerVisitor, c: MMLocalClass): String is abstract
+end
+
+# An element of a module table
+# Such an elements represent colors or identifiers
+abstract class ModuleTableElt
+special AbsTableElt
+ # Return the value of the element once the global analisys is performed
+ fun value(ga: GlobalAnalysis): String is abstract