This library cluster has 106 classes.
ECF: base.ecf
Source code: directory list
Building on the basic ISE reflection mechanisms, this cluster makes possible a very flexible way of exchanging data between Eiffel objects and any structured plaintext format, and also a binary memory block conforming to EL_MEMORY_READER_WRITER (inherits SED_MEMORY_READER_WRITER)
Key Features
EL_REFLECTED_FIELD* EL_REFLECTED_EXPANDED_FIELD* EL_REFLECTED_NUMERIC_FIELD* EL_REFLECTED_ENUMERATION* EL_REFLECTED_ENUM_NATURAL_16 EL_REFLECTED_ENUM_INTEGER_16 EL_REFLECTED_ENUM_INTEGER_32 EL_REFLECTED_ENUM_NATURAL_64 EL_REFLECTED_ENUM_INTEGER_8 EL_REFLECTED_ENUM_INTEGER_64 EL_REFLECTED_ENUM_NATURAL_8 EL_REFLECTED_ENUM_NATURAL_32 EL_REFLECTED_ENUM_REAL_32 EL_REFLECTED_ENUM_REAL_64 EL_REFLECTED_NATURAL_16 EL_REFLECTED_ENUM_NATURAL_16 EL_REFLECTED_INTEGER_16 EL_REFLECTED_ENUM_INTEGER_16 EL_REFLECTED_INTEGER_32 EL_REFLECTED_ENUM_INTEGER_32 EL_REFLECTED_NATURAL_64 EL_REFLECTED_ENUM_NATURAL_64 EL_REFLECTED_INTEGER_8 EL_REFLECTED_ENUM_INTEGER_8 EL_REFLECTED_INTEGER_64 EL_REFLECTED_ENUM_INTEGER_64 EL_REFLECTED_NATURAL_8 EL_REFLECTED_ENUM_NATURAL_8 EL_REFLECTED_NATURAL_32 EL_REFLECTED_ENUM_NATURAL_32 EL_REFLECTED_REAL_32 EL_REFLECTED_ENUM_REAL_32 EL_REFLECTED_REAL_64 EL_REFLECTED_ENUM_REAL_64 EL_REFLECTED_BOOLEAN EL_REFLECTED_POINTER EL_REFLECTED_CHARACTER_8 EL_REFLECTED_CHARACTER_32 EL_REFLECTED_REFERENCE EL_REFLECTED_PATH EL_REFLECTED_TUPLE EL_REFLECTED_STORABLE_TUPLE EL_REFLECTED_MAKEABLE_FROM_STRING* EL_REFLECTED_MAKEABLE_FROM_ZSTRING EL_REFLECTED_MAKEABLE_FROM_STRING_8 EL_REFLECTED_MAKEABLE_FROM_STRING_32 EL_CACHEABLE_REFLECTED_REFERENCE* EL_REFLECTED_STRING* EL_REFLECTED_URI EL_REFLECTED_STRING_8 EL_REFLECTED_STRING_32 EL_REFLECTED_ZSTRING EL_REFLECTED_COLLECTION EL_REFLECTED_COLLECTION_EIF_OBJ_BUILDER_CONTEXT EL_REFLECTED_EIF_OBJ_BUILDER_CONTEXT EL_REFLECTED_STORABLE EL_REFLECTED_DATE_TIME EL_REFLECTED_DATE EL_REFLECTED_TIME EL_REFLECTED_STRING* [S -> STRING_GENERAL] [$source EL_REFLECTED_BOOLEAN_REF]
Class reflective meta data
Common class type identifiers accesible via EL_SHARED_CLASS_ID
Stateless class with reflective routines
Further Information
Click on class link to see notes, descendants and client examples.
Basic interface to reflective object useful in parallel inheritance
Reflective meta data for classes that inherit EL_REFLECTIVELY_SETTABLE_STORABLE
Wrapper object for enumeration value defined by a class inheriting from EL_ENUMERATION. An instance of an implemention class can be initialized by a name string either matching the enumeration name or imported from a foreign naming convention.
It is especially useful as a field attribute in a class inheriting EL_REFLECTIVE.
Binary state object that can be associated with a descriptive name pair. on or off for example.
Further Information
Click on class link to see notes and tests.
Factory to create class instances conforming to parameter G and contained in set of types defined by TYPE_SET parameter, and also including the default type DEFAULT.
Further Information
Click on class link to see notes.
Allows descendants access to initialization agents for EL_OBJECT_FACTORY
Further Information
Click on class link to see client examples.
A factory cell to create objects conforming to EL_MAKEABLE
Factory to create objects conforming to EL_MAKEABLE
Further Information
Click on class link to see notes and client examples.
Factory for instances of Eiffel classes conforming to parameter G
Tuple arguments act as type manifests with each type A, B, C.. conforming to G. A contract ensures all types conform. Typically you would create the tuple like this:
Types: TUPLE [A, B, C ..] once create Result end
Further Information
Click on class link to see client examples.
Reflected field factory
Shared access to factory of objects conforming to EL_MAKEABLE
Further Information
Click on class link to see client examples.
Enumeration with two values representing True and False. The values can be renamed in descendant
Examples:
confirmed/unconfirmed yes/no etc..
Enumeration with added descriptions parsed from text field descriptions See class EL_REFLECTIVE_DESCRIPTIONS
Object for mapping names to code numbers with bi-directional lookups, i.e. obtain the code from a name and the name from a code. The generic parameter can be any NUMERIC type.
Further Information
Click on class link to see instructions, notes, descendants and client examples.
Enumeration of type ids by correspondence of fields names to type names. Example: EL_CLASS_TYPE_ID_ENUM
Implementation of EL_FIELD_VALUE_TABLE that escapes the value of STRING_32 field attribute types.
Implementation of EL_FIELD_VALUE_TABLE that escapes the value of STRING_8 field attribute types.
Implementation of EL_FIELD_VALUE_TABLE that escapes the value of field attribute string.
Further Information
Click on class link to see descendants.
Implementation of EL_FIELD_VALUE_TABLE that escapes the value of EL_ZSTRING field attribute types.
Sorted set of field indices for reflected object
Common expanded fields including BOOLEAN, POINTER and fields conforming to NUMERIC
Manages attribute field for a class
Further Information
Click on class link to see descendants and client examples.
Array of reflected fields for a class
INTEGER_16 field
INTEGER_32 field
INTEGER_64 field
INTEGER_8 field
NATURAL_16 field
NATURAL_32 field
NATURAL_64 field
NATURAL_8 field
Field conforming to NUMERIC
Further Information
Click on class link to see client examples.
REAL_32 field
REAL_32 field
Numeric field with enumerated values
INTEGER_16 field with enumerated values
INTEGER_32 field with enumerated values
INTEGER_64 field with enumerated values
INTEGER_8 field with enumerated values
NATURAL_16 field with enumerated values
NATURAL_32 field with enumerated values
NATURAL_64 field with enumerated values
NATURAL_8 field with enumerated values
REAL_32 field with enumerated values
REAL_64 field with enumerated values
Reflected boolean
Reflected character 32
Reflected character 8
Reflected collection
Field conforming to EL_PATH
Reflected pointer
Reference field that can be set from a set of cached values
Field conforming to BOOLEAN_REF
Further Information
Click on class link to see tests.
Reflected reference field conforming to parameter G
Further Information
Click on class link to see descendants.
Storable object that use object reflection to read and write fields and compare objects.
Reflected TUPLE that can be read and written to an object of type EL_MEMORY_READER_WRITER
Reflected TUPLE that can be read from a string
Reflected DATE field
Reflected DATE_TIME field
Reflected TIME field
Field that conforms to type EL_REFLECTED_REFERENCE [EL_MAKEABLE_FROM_STRING_GENERAL]
Reflected makeable from string 32
Reflected makeable from string 8
Reflected makeable from zstring
Field that conforms to STRING_GENERAL
Reflected string 32
Reflected string 8
Reflected uri
Reflected zstring
Further Information
Click on class link to see client examples.
Abstraction to set a string field from a cached value set
Further Information
Click on class link to see descendants.
Collection type association
Internal reflection routines accessible via EL_MODULE_EIFFEL
Shared access to routines of class EL_INTERNAL and ISE base class INTERNAL
Further Information
Click on class link to see client examples.
Shared access to routines of class EL_NAMING_ROUTINES
Further Information
Click on class link to see client examples.
Object with attribute names that are translateable TO and FROM another naming convention There are also routines to derive a name from the class generator name.
Accessible from shared object_or_type Naming in class EL_MODULE_NAMING
Further Information
Click on class link to see tests and client examples.
Reflected reference object
Access control for features of class EL_REFLECTIVE
Further Information
Click on class link to see client examples.
Object to map textual descriptions in description to attributes
Further Information
Click on class link to see notes.
Adapt Eiffel identifiers to other word separation conventions and vice-versa
Further Information
Click on class link to see client examples.
Function info
Further Information
Click on class link to see client examples.
Procedure info
Routine info
Routine info factory
Further Information
Click on class link to see client examples.
Object with field_table attribute of field getter-setter's. See class EL_REFLECTED_FIELD_TABLE
Further Information
Click on class link to see notes, tests, descendants and client examples.
Reflective command line config
Used in conjunction with EL_REFLECTIVELY_SETTABLE to reflectively set fields from name-value pairs, where value conforms to READABLE_STRING_GENERAL.
Further Information
Click on class link to see descendants and client examples.
Used in conjunction with EL_REFLECTIVE to reflectively set fields from name-value pairs, where value conforms to STRING_32.
Further Information
Click on class link to see client examples.
Used in conjunction with EL_REFLECTIVE to reflectively set fields from name-value pairs, where value conforms to STRING_8.
Used in conjunction with EL_REFLECTIVE to reflectively set fields from name-value pairs, where value conforms to EL_ZSTRING (aka ZSTRING)
Further Information
Click on class link to see tests and client examples.
Type constants for object reflection
Shared instance of class EL_CLASS_TYPE_ID_ENUM
Shared access to table of object creation functions to initialize reference attributes reflectively. See class EL_REFLECTED_REFERENCE.
You can indirectly add to this table by overriding new_instance_functions from class EL_REFLECTIVE.
Shared object pool
Shared reader writer table
Table that can be filled with fields values from an object implementing class EL_REFLECTIVE using the fill_field_value_table procedure. The type of fields that can be filled is specified by generic paramter G. An optional condition predicated can be set that filters the table content according to the value of the field.
Functions by result type
Implementation of EL_FIELD_VALUE_TABLE for the INTEGER type
Lookup objects by type_id
Implementation of EL_FIELD_VALUE_TABLE for reference field attribute types
Reflected collection type table
Reflected field table
Further Information
Click on class link to see client examples.
Table of reflected reference fields for types conforming to BASE_TYPE and indexed by type_id
Reflected storable reference type table