class TYPE
Summary
Class invariant
Overview
creation features
exported features
some property similar to TYPE_MARK *without* start_position and some other
  • direct_thru_step (parent_type: TYPE, a_parent_edge: PARENT_EDGE): BOOLEAN
    Check that we are actually doing an atomic-valid direct step into the inheritance hierarchy (i.e. we are making a direct move move from parent_type using the a_parent_edge path to reach Current.
  • is_equal (other: TYPE): BOOLEAN
    Is other attached to an object considered equal to current object?
inherits_from (other: TYPE): BOOLEAN
effective function
inserts (other: TYPE): BOOLEAN
effective function
insert_inherit_test (other: TYPE): INTEGER_8
effective function
Simple predicate (i.e. does not fill the error_handler).
live_type: LIVE_TYPE
writable attribute
The corresponding one if already created.
canonical_type_mark: TYPE_MARK
writable attribute
The one used to create Current.
writable attribute
Because canonical_type_mark is static, this is an alias for canonical_type_mark.written_name
long_name: HASHED_STRING
effective function
This name holds cluster info needed to make different types with the same name distinct.
class_text: CLASS_TEXT
writable attribute
private_generic_list: ARRAY[TYPE]
writable attribute
hash_code: INTEGER_32
writable attribute
The hash-code value of Current.
valid_feature_name (fn: FEATURE_NAME): BOOLEAN
effective function
Is fn an existing final feature name of Current?
registered_name (fn: FEATURE_NAME): FEATURE_NAME
effective function
Useful for declaration position and frozen status.
effective function
Get the FEATURE_STAMP relative to fn.
effective function
To make in a single step a valid_feature_name test which may be followed by a lookup call.
get_feature_name (fs: FEATURE_STAMP): FEATURE_NAME
effective function
has_simple_feature_name (simple_feature_name: HASHED_STRING): BOOLEAN
effective function
feature_stamp_of (simple_feature_name: HASHED_STRING): FEATURE_STAMP
effective function
Used to get the good one knowing that simple_feature_name is the final existing name.
feature_collection_done: BOOLEAN
effective function
class_invariant: CLASS_INVARIANT
writable attribute
copy_stamp: FEATURE_STAMP
effective function
The one of the copy feature (which is magically called inside twin).
accept (visitor: TYPE_VISITOR)
effective procedure
Accept to be visited by the visitor.
effective function
Id of the receiver to produce C code.
is_deferred: BOOLEAN
writable attribute
is_generic: BOOLEAN
effective function
is_expanded: BOOLEAN
effective function
is_reference: BOOLEAN
effective function
generic_list: ARRAY[TYPE]
effective function
is_kernel_expanded: BOOLEAN
effective function
True for BOOLEAN, CHARACTER, INTEGER, REAL, DOUBLE and POINTER.
is_boolean: BOOLEAN
effective function
is_character: BOOLEAN
effective function
is_integer: BOOLEAN
effective function
Is it some INTEGER_* type?
is_real: BOOLEAN
effective function
is_pointer: BOOLEAN
effective function
is_string: BOOLEAN
effective function
is_unicode_string: BOOLEAN
effective function
is_array: BOOLEAN
effective function
is_any: BOOLEAN
effective function
is_native_array: BOOLEAN
effective function
is_agent: BOOLEAN
effective function
is_tuple: BOOLEAN
effective function
is_empty_expanded: BOOLEAN
effective function
True when is it a user's expanded type with no attribute.
is_user_expanded: BOOLEAN
effective function
Is it really a user expanded type ?
c_type_for_target_in (str: STRING)
effective procedure
Append in str the C type to use when current Eiffel type is used for the target of a feature.
c_type_for_result_in (str: STRING)
effective procedure
Append in str the C type to use when current Eiffel type is used as a result type of a C function.
direct_non_void_call_flag: BOOLEAN
effective function
can_be_assigned_to (other: TYPE): BOOLEAN
effective function
Used to know if Current can be assigned into other.
direct_thru_step (parent_type: TYPE, a_parent_edge: PARENT_EDGE): BOOLEAN
effective function
Check that we are actually doing an atomic-valid direct step into the inheritance hierarchy (i.e. we are making a direct move move from parent_type using the a_parent_edge path to reach Current.
make (i: E)
effective procedure
parent_edge_load (i: INTEGER_32): LOAD
effective function
child_edge_load (i: INTEGER_32): LOAD
effective function
add_parent (node: TYPE)
effective procedure
add_child (node: TYPE)
effective procedure
remove_parent (node: TYPE)
effective procedure
remove_child (node: TYPE)
effective procedure
item: E
writable attribute
max_rank: INTEGER_32
writable attribute
min_rank: INTEGER_32
writable attribute
parents: FAST_ARRAY[TYPE]
writable attribute
children: FAST_ARRAY[TYPE]
writable attribute
set_item (i: E)
effective procedure
parents_count: INTEGER_32
effective function
children_count: INTEGER_32
effective function
has_parent_edge (id: INTEGER_32): BOOLEAN
effective function
has_child_edge (id: INTEGER_32): BOOLEAN
effective function
remove_parent_edge (id: INTEGER_32): TYPE
effective function
Return connected node.
restore_parent_edge (id: INTEGER_32, node: TYPE)
effective procedure
remove_child_edge (id: INTEGER_32): TYPE
effective function
Return connected node.
restore_child_edge (id: INTEGER_32, node: TYPE)
effective procedure
deep_reset_edges
effective procedure
Set edge identifiers with values starting from 0.
parent (i: INTEGER_32): TYPE
effective function
child (i: INTEGER_32): TYPE
effective function
has_parent (other: TYPE): BOOLEAN
effective function
has_child (other: TYPE): BOOLEAN
effective function
parent_edge (i: INTEGER_32): INTEGER_32
effective function
child_edge (i: INTEGER_32): INTEGER_32
effective function
has_cycle: BOOLEAN
effective function
has_parent_cycle: BOOLEAN
effective function
has_children_cycle: BOOLEAN
effective function
is_toplevel: BOOLEAN
effective function
is_leaf: BOOLEAN
effective function
is_connected_to (other: TYPE): BOOLEAN
effective function
distance (other: TYPE): INTEGER_32
effective function
set_rank
effective procedure
add_connected_nodes_in (list: COLLECTION[HIERARCHIC_GRAPH_NODE[E]])
effective procedure
Add in list all nodes belonging to the same graph as Current
fill_path_to (path: COLLECTION[INTEGER_32], destination: TYPE)
effective procedure
Add in path edges identifiers corresponding to a path from current node to destination node.
is_equal (other: TYPE): BOOLEAN
deferred function
Is other attached to an object considered equal to current object?