| Online Eiffel Documentation

EiffelStudio

# Reference for `eif_real_function'

## SYNOPSYS

    #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);

## DESCRIPTION

These functions return the address of the Eiffel function of name name from the class, which type identifier is tid.
Use eif_reference_function for an Eiffel function returning an Eiffel reference.
Use eif_integer_function for an Eiffel function returning an Eiffel integer.
Use eif_character_function for an Eiffel function returning an Eiffel character.
Use eif_real_function for an Eiffel function returning an Eiffel real.
Use eif_double_function for an Eiffel function returning an Eiffel double.
Use eif_boolean_function for an Eiffel function returning an Eiffel boolean.
Use eif_pointer_function for an Eiffel function returning an Eiffel pointer.
Use eif_bit_function for an Eiffel function returning an Eiffel bit.

If the visible exception is enabled, it raises an visible exception upon failure.

## RETURN VALUE

It returns NULL when it fails (function does not exist or is not visible). Otherwise, the address of the function is returned.

## 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

eif_reference_function() is equivalent to eif_fn_ref(), which is deprecated.
eif_integer_function() is equivalent to eif_fn_int(),which is deprecated.
eif_real_function() is equivalent to eif_fn_float(),which is deprecated.
eif_double_function() is equivalent to eif_fn_double(), which is deprecated.
eif_character_function() is equivalent to eif_fn_char(), which is deprecated.
eif_bit_function() is equivalent to eif_fn_bit(),which is deprecated.
eif_boolean_function() is equivalent to eif_fn_bool(), which is deprecated.
eif_pointer_function() is equivalent to eif_fn_pointer(), which is deprecated.

## SEE ALSO

eif_type_id(1), eif_protect(1), eif_procedure(1).