This cluster provides deferred classes that abstract out component behaviour:
CODE
is the interfave of the tools/code
component. It represents a code element (either an expression or an instruction). Note that each
code is either an instruction or an expression (see below). The classes in
the tools/code
component are intended to be inserted rather than inherited (they add
specific behaviour to some instructions and expressions).
EXPRESSION
is the interface of
the tools/expression
component. It represents an Eiffel expression, i.e. a syntactic
construction having a result type.
INSTRUCTION
is the interface of
the tools/instruction
component. It represents an Eiffel instruction.
PARSER
is the interface of
the tools/parser
component. It parses a file (an Eiffel file, an ACE file or a
configuration file) and extracts syntactic information.
RUN_FEATURE
is the interface of
the tools/run_feature
component. It represents a live feature, i.e. a callable feature
tailored for some particular LIVE_TYPE
.
TYPE_MARK
is the interface of
the tools/type_mark
component. It represents an Eiffel type.
Moreover, the class SMART_EIFFEL
drives the
compilation process. It stays in this cluster because it is so important.