Difference between revisions of "Inlining"

From Liberty Eiffel Wiki
Jump to navigation Jump to search
 
m (s/LibertyEiffel/Liberty Eiffel/)
 
(13 intermediate revisions by 3 users not shown)
Line 1: Line 1:
  +
[[Category: Interfacing]]
*** This page can be translated from the French version
 
  +
There exists a capability unique to Liberty Eiffel of putting C code in line. Of course, this method is only usable with [[compile_to_c]].
*** Thanks!
 
  +
  +
Two methods <TT>c_inline_c</TT> and <TT>c_inline_h</TT> are defined in [[library_class:ANY|<TT>ANY</TT>]]. These two methods take a single parameter, a '''manifest''' character string.
  +
  +
* <TT>c_inline_c</TT> inserts in line, at the appropriate spot in the generated feature, the C code of the character string;
  +
* <TT>c_inline_h</TT> inserts the C code of the character string in the Liberty Eiffel generated header file (<TT>.h</TT>).
  +
  +
Use of these functions implies a precise knowledge of the Liberty Eiffel C code (and doesn't favour portability). '''We don't guarantee backwards compatibility with code using these two methods'''.
  +
  +
If, despite all these warnings, you want to know more, read [[Generated c code|this page]].

Latest revision as of 07:47, 3 July 2016

There exists a capability unique to Liberty Eiffel of putting C code in line. Of course, this method is only usable with compile_to_c.

Two methods c_inline_c and c_inline_h are defined in ANY. These two methods take a single parameter, a manifest character string.

  • c_inline_c inserts in line, at the appropriate spot in the generated feature, the C code of the character string;
  • c_inline_h inserts the C code of the character string in the Liberty Eiffel generated header file (.h).

Use of these functions implies a precise knowledge of the Liberty Eiffel C code (and doesn't favour portability). We don't guarantee backwards compatibility with code using these two methods.

If, despite all these warnings, you want to know more, read this page.