mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2026-02-28 11:50:57 +01:00
Eiffel_25.12 release
git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@2496 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -0,0 +1,125 @@
|
||||
[[Property:title|eif_*_function]]
|
||||
[[Property:weight|15]]
|
||||
[[Property:uuid|643603a5-de12-1ffc-2da3-92c8475078e8]]
|
||||
==Overview==
|
||||
|
||||
This page documents all CECIL functions of the form eif_*_function where "*" is a supported type such as "integer", "bit", "character", "real", etc.
|
||||
|
||||
|
||||
==Synopsis==
|
||||
<code lang="text">
|
||||
#include "eif_cecil.h"
|
||||
|
||||
EIF_REFERENCE_FUNCTION eif_reference_function (char * name, int * tid);
|
||||
|
||||
EIF_INTEGER_FUNCTION eif_integer_function (char * name, int * tid);
|
||||
|
||||
EIF_CHARACTER_FUNCTION eif_character_function (char * name, int * tid);
|
||||
|
||||
EIF_REAL_FUNCTION eif_real_function (char * name, int * tid);
|
||||
|
||||
EIF_DOUBLE_FUNCTION eif_double_function (char * name, int * tid);
|
||||
|
||||
EIF_BOOLEAN_FUNCTION eif_boolean_function (char * name, int * tid);
|
||||
|
||||
EIF_POINTER_FUNCTION eif_pointer_function (char * name, int * tid);
|
||||
|
||||
EIF_BIT_FUNCTION eif_bit_function (char * name, int * tid);
|
||||
</code>
|
||||
|
||||
==Description==
|
||||
|
||||
These functions return the address of the Eiffel function of name <code lang="text">name</code> from the class, which type identifier is <code lang="text">tid</code>.
|
||||
|
||||
{| border="1"
|
||||
! Use this function !! For an Eiffel function returning
|
||||
|-
|
||||
| eif_reference_function
|
||||
| Eiffel reference
|
||||
|-
|
||||
| eif_integer_function
|
||||
| Eiffel integer
|
||||
|-
|
||||
| eif_character_function
|
||||
| Eiffel character
|
||||
|-
|
||||
| eif_real_function
|
||||
| Eiffel real
|
||||
|-
|
||||
| eif_double_function
|
||||
| Eiffel double
|
||||
|-
|
||||
| eif_boolean_function
|
||||
| Eiffel boolean
|
||||
|-
|
||||
| eif_pointer_function
|
||||
| Eiffel pointer
|
||||
|-
|
||||
| eif_bit_function
|
||||
| Eiffel bit
|
||||
|}
|
||||
|
||||
|
||||
If the visible exception is enabled, it raises an visible exception upon failure.
|
||||
|
||||
==Return value==
|
||||
|
||||
Successful: The address of the function.
|
||||
|
||||
Failing: NULL (function does not exist or is not visible).
|
||||
|
||||
==Notes==
|
||||
|
||||
The Eiffel function cannot be a C external. In this case, you must directly call the C routine.
|
||||
|
||||
The return value is an address: to use it as a routine, you must call it with arguments or at least with ().
|
||||
|
||||
No argument type checking is done. You may cast the address of an Eiffel routine, obtained with these functions, when calling it with real arguments.
|
||||
|
||||
If the function returns an Eiffel reference, you must protect it with [[eif_protect]].
|
||||
|
||||
==Conformance==
|
||||
ISE Eiffel 4.4 and later.
|
||||
|
||||
==Compatibility==
|
||||
|
||||
Compatibility with deprecated functions is shown in this table.
|
||||
|
||||
|
||||
{| border="1"
|
||||
! Function name !! Equivalent deprecated function name
|
||||
|-
|
||||
| eif_reference_function
|
||||
| eif_fn_ref
|
||||
|-
|
||||
| eif_integer_function
|
||||
| eif_fn_int
|
||||
|-
|
||||
| eif_real_function
|
||||
| eif_fn_float
|
||||
|-
|
||||
| eif_double_function
|
||||
| eif_fn_double
|
||||
|-
|
||||
| eif_character_function
|
||||
| eif_fn_char
|
||||
|-
|
||||
| eif_bit_function
|
||||
| eif_fn_bit
|
||||
|-
|
||||
| eif_boolean_function
|
||||
| eif_fn_bool
|
||||
|-
|
||||
| eif_pointer_function
|
||||
| eif_fn_pointer
|
||||
|}
|
||||
|
||||
|
||||
{{SeeAlso| <br/>
|
||||
[[eif_type_id]]<br/>
|
||||
[[eif_protect]]<br/>
|
||||
[[eif_procedure]] }}
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user