+
Point of view
All features
deferred class ANY
Summary
Project-wide universal properties. This class is an ancestor to all developer-written classes. By default all classes insert ANY.
Known children
Inherit list: PRINTABLE_REFERENCE, TUPLE
Insert list: ABSTRACT_BACKTRACKING_GLOBALS, ABSTRACT_BACKTRACKING_POOL, ABSTRACT_BACKTRACKING_POOLABLE, ABSTRACT_SORTER, AGGREGATOR, ANY_AVL_DICTIONARY_NODE, ANY_AVL_SET_NODE, ANY_COROUTINE_ITERATOR, ANY_HASHED_BIJECTIVE_DICTIONARY_NODE, ANY_HASHED_DICTIONARY_NODE, ANY_HASHED_SET_NODE, ANY_LINKED_LIST_NODE, ANY_REFERENCE, ANY_TWO_WAY_LINKED_LIST_NODE, ARGUMENTS, ARRAYED_COLLECTION_HANDLER, AT_EXIT, AUTOMATON, AUTOMATON_CONTEXT, AVL_CONSTANTS, BACKTRACKING_GLOBALS, BACKTRACKING_NODE, BACKTRACKING_NODE_FILL, BACKTRACKING_NODE_GLOBALS, BACKTRACKING_REGULAR_EXPRESSION_PATTERN, BASIC_DIRECTORY, BENCHMARK, BOOLEAN, CGI_AUTH_TYPE, CGI_CONTENT_LENGTH, CGI_CONTENT_TYPE, CGI_FORM, CGI_GATEWAY_INTERFACE, CGI_HANDLER, CGI_IO, CGI_PATH_INFO, CGI_PATH_TRANSLATED, CGI_QUERY_STRING, CGI_REMOTE_INFO, CGI_REQUEST_METHOD, CGI_RESPONSE, CGI_SCRIPT_NAME, CGI_UTILS, CHAIN_HANDLER, CHARACTER_CONSTANTS, CLARG_OPTIONS, CLOCK, COMMAND, COMMAND_LINE_ARGUMENT, COMMAND_LINE_ARGUMENT_FACTORY, COMPARABLE, COMPLEX_CONSTANTS, COMPLEX_MATH, COROUTINE, DIRECTORY_NOTATION, DIRECTORY_NOTATION_HANDLER, DISPOSABLE, EDC_ANY_FIELD, EDC_CONSTANTS, EDC_CRITERION, EDC_FIELD_OPTION, EDC_ORDERING, EDC_QUERY, EDC_QUERY_OPTION, EDC_RECORD, EDC_SESSION, EDC_SESSION_DATA, EDC_SESSION_FETCH, EIFFELTEST_TOOLS, EIFFEL_LEFT_ASSOCIATIVE_EXPRESSION, EIFFEL_NODE_FACTORY, EIFFEL_NODE_HANDLER, EIFFEL_POSITION, EVENTS_EXPECTER, EVENTS_SET, EVENTS_SET_HANDLER, EVENT_DESCRIPTOR, EXCEPTION, EXCEPTIONS, EXEC_STREAM, EZMQ, EZMQ_DATA, EZMQ_ENDPOINT, EZMQ_ENDPOINT_IMPL, EZMQ_HUB, EZMQ_POLLABLE, FACTORY, FILE, FILE_TOOLS, FILTER, FILTERABLE, FOREIGN_AGENT, FOREIGN_DLL, FOREIGN_DLL_HANDLER, FOREIGN_OBJECT, FOREIGN_PARAMETERS, FOREIGN_TYPE, FOREIGN_TYPES, GET_TEXT, HASHABLE, HOARD, HTML_ATTRIBUTE, HTML_ELEMENT, HTML_HANDLER, HTML_PARSER, HTTP_METHOD_HANDLER, HTTP_PROXY, I18N, INPUT_STREAM_TOOLS, INTERNALS, INTERNALS_HANDLER, ITERATOR, JSON_DATA, JSON_HANDLER, LOGGER, LOGGING, LOG_CONFIGURATION, LOG_FILE_OPTION, LOG_FILE_OPTIONS, LOG_LEVEL, LOG_LEVELS, LOOP_ITEM, LOOP_STACK, MAP_AGGREGATOR, MATH_CONSTANTS, MEMORY, MESSAGE_FORMATTER, MINI_PARSER_MEMORY, MOCK_ARGUMENT, MOCK_ARGUMENTS, MOCK_EXPECTATION, MOCK_MATCHER, MOCK_MATCHERS, MOCK_OBJECT, MOCK_SCENARIO, MOCK_TIMES, NATIVE_ARRAY_COLLECTOR, NCURSES_CHARACTERS, NCURSES_COLORS, NCURSES_HANDLER, NCURSES_KEYS, NCURSES_LIST_ITEM, NCURSES_MENU_ITEM, NCURSES_TOOLS, NETWORK_RESOURCE_VALIDITY, NUMBER_TOOLS, OBSERVABLE, OBSERVER, PACKRAT, PARSER_FACET, PARSER_IMAGE, PARSE_ACTION, PARSE_CONTEXT, PARSE_ERROR, PATH_JOINER, PIPE_FUNCTIONS, PLATFORM, PROCESS_FACTORY, PROCESS_GROUP, PROCESS_LAUNCH_INFO, PROCESS_RUNNER, PROCESS_WAIT, PROTOCOLS, QUEUE, RANDOM_NUMBER_GENERATOR, READLINE_CONTEXT, REAL_PRECISION, RECYCLABLE, RECYCLING_POOL, REDIRECTION_TOOLS, REGULAR_EXPRESSION, REGULAR_EXPRESSION_BUILDER, REGULAR_EXPRESSION_STRING_SCANNER, REPOSITORY, ROUTINE, SAFE_EQUAL, SERVER, SIGNAL_0, SIGNAL_1, SIGNAL_2, SIGNAL_3, SIGNAL_4, SINGLETON, SOCKET_HANDLER, SOCKET_PLUG_IN, STATE, STORABLE, STREAM_HANDLER, STRING_HANDLER, STRING_RECYCLING_ITEM, SYSTEM, TEMPLATE_LOOP_ITEM, TEMPLATE_RESOLVER, THREAD, THREAD_CONTEXT, TIME_EVENTS, TIME_HANDLER, TRISTATE_VALUES, UI_BRIDGE_ITEM, UI_CONNECT_ITEM, UI_ITEM, UNICODE_CHARACTERS, UNICODE_PARSER_POSITION, UNICODE_STRING_HANDLER, UNICODE_STRING_HELPER, URL_VALIDITY, VARIANT, VISITABLE, VISITOR, WAITPID_ACTION, XMLNS_CALLBACKS, XMLNS_VALIDATOR, XML_CALLBACKS, XML_DTD_MEMORY, XML_NAMESPACES, XML_PARSER_BUFFER, XML_VALIDATOR
Overview
Features
{}
Access:
{ANY}
  • generating_type: STRING
    Name of current object's generating type (type of which it is a direct instance).
  • generator: STRING
    Name of current object's generating class (base class of the type of which it is a direct instance).
Status report:
{ANY}
Comparison:
{ANY}
  • infix "~" (other: ANY): BOOLEAN
    Is other attached to an object considered equal to current object?
  • is_equal (other: ANY): BOOLEAN
    Is other attached to an object considered equal to current object?
  • standard_is_equal (other: ANY): BOOLEAN
    Are Current and other field-by-field identical?
Deep Comparison:
{ANY}
Duplication:
{ANY}
  • twin: ANY
    Return a new object with the dynamic type of Current.
  • copy (other: ANY)
    Update current object using fields of object attached to other, so as to yield equal objects.
  • immutable: BOOLEAN
    Is the object immutable?
  • standard_twin: ANY
    Return a new object with the dynamic type of Current.
  • standard_copy (other: ANY)
    Copy every field of other onto corresponding field of current object.
Deep Duplication:
{ANY}
  • deep_twin: ANY
    Return a new object with the dynamic type of Current.
Basic operations:
{ANY}
{}
Input and Output:
{}
Object Printing:
{}
Object Printing:
{ANY}
tagged_out management:
{}
Various useful tools:
{}
The Guru section:
{ANY}
The C Guru section:
{}
  • c_inline_h (c_code: STRING)
    Target must be Current and c_code must be a manifest string.
  • c_inline_c (c_code: STRING)
    Target must be Current and c_code must be a manifest string.
{}
Implementation of ANY (do not use directly):
{}
{INTERNALS_HANDLER}
{TYPED_INTERNALS}
{}
{}
default_create
effective procedure
{}
Default creation method.
It is used when no creation method is specified if allowed. Note it may be renamed.
manifest_creation
frozen
effective procedure
{}
This procedure is used as a placeholder in creation clauses.
Instances of a class can be created using the "manifest generic" notation if and only if this class has manifest_creation in its creation clause. You should never call this procedure.
generating_type: STRING
{ANY}
Name of current object's generating type (type of which it is a direct instance).
generator: STRING
{ANY}
Name of current object's generating class (base class of the type of which it is a direct instance).
same_dynamic_type (other: ANY): BOOLEAN
frozen
{ANY}
Is the dynamic type of Current identical to the dynamic type of other?
require
  • other /= Void
infix "~" (other: ANY): BOOLEAN
effective function
{ANY}
Is other attached to an object considered equal to current object?
Shorthand for is_equal
require
  • other /= Void
ensure
is_equal (other: ANY): BOOLEAN
{ANY}
Is other attached to an object considered equal to current object?
require
  • other /= Void
ensure
standard_is_equal (other: ANY): BOOLEAN
frozen
{ANY}
Are Current and other field-by-field identical?
require
  • other /= Void
ensure
is_deep_equal (other: ANY): BOOLEAN
frozen
{ANY}
Is Current recursively isomorph with other ?
require
  • other_not_void: other /= Void
twin: ANY
frozen
{ANY}
Return a new object with the dynamic type of Current.
Before being returned, the new object is initialized using feature copy (Current is passed as the argument). Thus, when feature copy of ANY is not redefined, twin has exactly the same behavior as standard_twin.
ensure
copy (other: ANY)
{ANY}
Update current object using fields of object attached to other, so as to yield equal objects.
Note: you can't copy object from a different dynamic type.
require ensure
immutable: BOOLEAN
is False
constant attribute
{ANY}
Is the object immutable?
standard_twin: ANY
frozen
{ANY}
Return a new object with the dynamic type of Current.
Before being returned, the new object is initialized using feature standard_copy (Current is passed as the argument).
standard_copy (other: ANY)
frozen
{ANY}
Copy every field of other onto corresponding field of current object.
require
  • other_not_void: other /= Void
ensure
deep_twin: ANY
frozen
{ANY}
Return a new object with the dynamic type of Current.
The new object structure is recursively duplicated from the one attached to Current.
default: ANY
frozen
effective function
{ANY}
Default value of entities declared with the Current type.
Hence, the Result is Void for all reference types and, as another example, the Result is 0 for an INTEGER expression.
is_default: BOOLEAN
effective function
{ANY}
Is the Current object in the default state?
For example, when this feature is applied on an INTEGER, the Result is True only when the INTEGER is 0. If not redefined, the Result is always False for a reference expression. Actually, this is_default predicate may be useful for user-defined expanded objects stored in collection (see all_default of class COLLECTION).
default_pointer: POINTER
frozen
effective function
{}
Default value of type POINTER (avoid the need to write p.default for some p of type POINTER).
ensure
  • Result = Result.default
default_rescue
effective procedure
{}
Handle exception if no Rescue clause.
(Default: do nothing.)
once function
{}
Handle to standard file setup.
To use the standard input/output file. Has type STD_FILES in ELKS 95.
ensure
  • Result /= Void
std_input: STD_INPUT
once function
{}
The standard input stream
ensure
  • Result /= Void
std_output: STD_OUTPUT
once function
{}
The standard output stream
ensure
  • Result /= Void
std_error: STD_ERROR
once function
{}
The standard error stream
ensure
  • Result /= Void
standard_streams: STANDARD_STREAMS
once function
{}
ensure
  • Result /= Void
print (some: STRING)
frozen
effective procedure
{}
When some is Void, output "Void" on std_output, otherwise, output some on std_output.
Note: still here for historical reasons.
print_on (file: OUTPUT_STREAM)
effective procedure
{ANY}
Default printing of current object on a file.
One may redefine fill_tagged_out_memory or out_in_tagged_out_memory to adapt the behavior of print_on.
require
  • file.is_connected
tagged_out: STRING
frozen
effective function
{ANY}
New string containing printable representation of current object, each field preceded by its attribute name, a colon and a space.
out: STRING
effective function
{ANY}
Create a new string containing terse printable representation of current object.
lazy_out: ABSTRACT_STRING
effective function
{ANY}
A newly allocate "lazy" representation of current object.
Lazy means that actual representation is made only on demand when the string actually used; the actual content of the representation is made using running out query as an agent.
prefix "&": ABSTRACT_STRING
effective function
{ANY}
A newly allocate "lazy" representation of current object.
Lazy means that actual representation is made only on demand when the string actually used; the actual content of the representation is made using running out query as an agent.
out_in_tagged_out_memory
effective procedure
{ANY}
Append terse printable representation of current object in tagged_out_memory.
require ensure
fill_tagged_out_memory
effective procedure
{ANY}
Append a viewable information in tagged_out_memory in order to affect the behavior of out, tagged_out, etc.
require ensure
tagged_out_memory_pool: STRING_RECYCLING_POOL
frozen
once function
{}
tagged_out_memories: STACK[STRING]
frozen
once function
{}
lock_tagged_out
frozen
effective procedure
{}
unlock_tagged_out
frozen
effective procedure
{}
tagged_out_locked: BOOLEAN
frozen
effective function
{}
tagged_out_memory: STRING
frozen
effective function
{}
tagged_out_memory_ref: REFERENCE[STRING]
frozen
once function
{}
crash
frozen
effective procedure
{}
Print Run Time Stack and then exit with exit_failure_code.
trace_switch (flag: BOOLEAN)
frozen
{}
May be used in combination with option "-sedb" of command compile_to_c (see compile_to_c documentation for details).
sedb_breakpoint
frozen
{}
May be used in combination with option "-sedb" of command compile_to_c to set a breakpoint for sedb, the Liberty Eiffel debugger.
breakpoint
frozen
effective procedure
{}
defer_breakpoint
frozen
effective procedure
{}
break_if_deferred
frozen
effective procedure
{}
die_with_code (code: INTEGER_32)
frozen
{}
Terminate execution with exit status code code.
Do not print any message. Note: you can use predefined exit_success_code or exit_failure_code as well as another code you need.
exit_success_code: INTEGER_32
is 0
constant attribute
{}
exit_failure_code: INTEGER_32
is 1
constant attribute
{}
not_yet_implemented
effective procedure
{}
to_pointer: POINTER
{ANY}
The memory address of Current.
This routine can be used only if Current is not expanded or if Current is some NATIVE_ARRAY or some FIXED_ARRAY. Actually, this routine does nothing: the value of Current which a memory address is returned. The compiler will emit an error message if you try to use to_pointer on some expanded type which is not a NATIVE_ARRAY nor FIXED_ARRAY.
object_size: INTEGER_32
frozen
{ANY}
Gives the size of the current object at first level only (pointed-to sub-object are not concerned).
The result is given in number of CHARACTER.
c_inline_h (c_code: STRING)
frozen
{}
Target must be Current and c_code must be a manifest string.
Write c_code in the heading C file.
c_inline_c (c_code: STRING)
frozen
{}
Target must be Current and c_code must be a manifest string.
Write c_code in the stream at current position.
do_at_exit (action: PROCEDURE[TUPLE])
frozen
effective procedure
{}
An action` to execute at exit.
print_run_time_stack
{}
Prints the run time stack.
The result depends on compilation mode. Usually, in mode -boost, no information is printed.
se_atexit
effective procedure
{}
Called automatically at exit when either std_output is used or do_at_exit is called.
(Do not call explicitly. Implementation purpose.)
to_internals: INTERNALS
frozen
The effect of this built_in
  create {TYPED_INTERNALS[like Current]} Result.for_object(Current)
internals_can_be_retrieved
effective procedure
Called when the function set_can_be_retrieved is called on a TYPED_INTERNALS having built this object from_blank.
Note that the invariant must hold at feature entry. By default, does nothing.
deferred_breakpoint_memory: REFERENCE[BOOLEAN]
frozen
once function
{}
se_fault
{}
raise a SEGFAULT signal