mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2026-04-05 17:49:26 +02:00
Author:admin
Date:2008-09-19T07:54:43.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@25 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL interface overview]]
|
||||
[[Property:weight|3]]
|
||||
[[Property:uuid|7d8b4785-6f05-02c9-ba1c-12bad3d4b331]]
|
||||
==Eiffel basic types==
|
||||
The EIFFEL include files define types for every EIFFEL types:
|
||||
* An Eiffel <eiffel>INTEGER</eiffel> is an ''EIF_INTEGER'',
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `attribute_exists']]
|
||||
[[Property:link_title|attribute_exists]]
|
||||
[[Property:weight|-15]]
|
||||
[[Property:uuid|7cdf93a7-6f63-869a-5443-b8908a086d18]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"'''
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_access']]
|
||||
[[Property:link_title|eif_access]]
|
||||
[[Property:weight|-14]]
|
||||
[[Property:uuid|2f74eeb4-2508-bf32-adf2-87959cfb2593]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_hector.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_adopt']]
|
||||
[[Property:link_title|eif_adopt]]
|
||||
[[Property:weight|-13]]
|
||||
[[Property:uuid|dc8ef8a9-7082-2a27-4e45-8f1d4472dbda]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_hector.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_attribute_type']]
|
||||
[[Property:link_title|eif_attribute_type]]
|
||||
[[Property:weight|-11]]
|
||||
[[Property:uuid|28b3840f-648f-dc4d-8c83-70532a5e8e63]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_attribute'.]]
|
||||
[[Property:link_title|eif_attribute]]
|
||||
[[Property:weight|-12]]
|
||||
[[Property:uuid|c843f272-8ac2-c30e-e71f-bd6c567e9de3]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_create']]
|
||||
[[Property:link_title|eif_create]]
|
||||
[[Property:weight|-7]]
|
||||
[[Property:uuid|b928f4b9-2830-5723-6f02-57eac618b116]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil. h"'''
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_disable_visible_exception']]
|
||||
[[Property:link_title|eif_disable_visible_exception]]
|
||||
[[Property:weight|-6]]
|
||||
[[Property:uuid|6b8323d9-1963-c6b8-0198-f07895916c46]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_enable_visible_exception']]
|
||||
[[Property:link_title|eif_enable_visible_exception]]
|
||||
[[Property:weight|-4]]
|
||||
[[Property:uuid|97b5a74c-d7ad-abf4-9390-59266b67c7c7]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_name_by_tid']]
|
||||
[[Property:link_title|eif_name_by_tid]]
|
||||
[[Property:weight|-1]]
|
||||
[[Property:uuid|7ae34f4d-5eaf-0703-29f7-54dc4f0fd49d]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_name']]
|
||||
[[Property:link_title|eif_name]]
|
||||
[[Property:weight|-2]]
|
||||
[[Property:uuid|2921b2ef-1f59-cd26-df50-5cb946eae84c]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_procedure']]
|
||||
[[Property:link_title|eif_procedure]]
|
||||
[[Property:weight|1]]
|
||||
[[Property:uuid|3937f124-fffa-3244-d2e4-46ccfcec5fa8]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_protect']]
|
||||
[[Property:link_title|eif_protect]]
|
||||
[[Property:weight|2]]
|
||||
[[Property:uuid|f335a229-93c4-4f3f-6fca-9c4c190745c4]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_hector.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_string']]
|
||||
[[Property:link_title|eif_string]]
|
||||
[[Property:weight|5]]
|
||||
[[Property:uuid|d203c941-df82-495a-55f3-791652b0e9ef]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_plug.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_type_id']]
|
||||
[[Property:link_title|eif_type_id]]
|
||||
[[Property:weight|9]]
|
||||
[[Property:uuid|248182c3-5e89-4adc-097f-f03cb934eb63]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_gen_conf.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_type_by_name']]
|
||||
[[Property:link_title|eif_type_by_name]]
|
||||
[[Property:weight|7]]
|
||||
[[Property:uuid|51549b56-757c-f91f-6d27-5784a12181ac]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_gen_conf.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_type_by_reference']]
|
||||
[[Property:link_title|eif_type_by_reference]]
|
||||
[[Property:weight|8]]
|
||||
[[Property:uuid|1258584a-0aae-3246-0553-98817deda6e0]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_type']]
|
||||
[[Property:link_title|eif_type]]
|
||||
[[Property:weight|6]]
|
||||
[[Property:uuid|8c200b03-cae1-bbcd-98b0-1767402744be]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_cecil.h"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[[Property:title|Reference for `eif_wean']]
|
||||
[[Property:link_title|eif_wean]]
|
||||
[[Property:weight|10]]
|
||||
[[Property:uuid|d94fdbce-8cbd-7714-ebfc-38e1f0526eaa]]
|
||||
==SYNOPSYS==
|
||||
<code>
|
||||
'''#include "eif_hector.h"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL Reference]]
|
||||
[[Property:weight|4]]
|
||||
[[Property:uuid|20ca6ef1-0d26-a556-955c-96bed93dfdfb]]
|
||||
Index of CECIL features
|
||||
* [[Reference for `RTMS'|RTMS()]]
|
||||
* [[Reference for `attribute_exists'|attribute_exists()]]
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL - Basic sample]]
|
||||
[[Property:weight|2]]
|
||||
[[Property:uuid|ed699d37-f480-0cef-817f-9f4a857c1691]]
|
||||
==cecil-test==
|
||||
|
||||
After you have done the appropriate steps to compile the example, you will get a `cecil.exe' on windows, or `cecil' on Unix.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL - C to Eiffel]]
|
||||
[[Property:weight|0]]
|
||||
[[Property:uuid|c3b64ef2-28b2-920e-44fb-4cff2320c099]]
|
||||
==array==
|
||||
This example shows how to create an Eiffel array from an existing C array. After you have done the appropriate steps to compile the example, you will get a `cecil.exe' on windows, or `cecil' on Unix. Launch the program and you will be prompted for 10 integers that will be inserted in a C array, it will then initialize the Eiffel array and calls display from the MY_ARRAY class. A typical output will be:
|
||||
<code>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL - Eiffel to C]]
|
||||
[[Property:weight|1]]
|
||||
[[Property:uuid|3d1df3fe-2ac8-1ba3-c846-8329ea8a3772]]
|
||||
==array==
|
||||
|
||||
This example shows how to create a C array from an existing Eiffel array.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL - How to compile the samples?]]
|
||||
[[Property:weight|4]]
|
||||
[[Property:uuid|3548e1b4-9488-10d5-561e-f817c15d6ff0]]
|
||||
==Compiling for Windows==
|
||||
|
||||
Depending on your C compiler different steps have to be done, but do not forget to do the following before starting the C compiler specific part in a DOS console:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL - Threads]]
|
||||
[[Property:weight|3]]
|
||||
[[Property:uuid|44f2ee31-8634-6e54-f45a-8b36f780f888]]
|
||||
==bank_account==
|
||||
|
||||
After you have done the appropriate steps to compile the example, you will get a `bank_account.exe' on windows, or `bank_account' on Unix.
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL samples]]
|
||||
[[Property:weight|5]]
|
||||
[[Property:uuid|dab15073-3970-7e47-a2d8-c926faa50ade]]
|
||||
Before trying the examples, please take a moment and look at the [[CECIL - How to compile the samples?|description]] that will explain how to compile the CECIL samples.
|
||||
|
||||
Available samples include:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|Compiling an Eiffel system for CECIL]]
|
||||
[[Property:weight|1]]
|
||||
[[Property:uuid|94a549df-1919-9dcd-82b3-1cd82e064a03]]
|
||||
==Compiling your Eiffel system for CECIL==
|
||||
It is very simple to "Cecilize" your Eiffel system, that is to say make its features available from the outside through CECIL. You will compile it as you normally would - either freeze it or finalize it. The only supplementary precaution is to protect from the dead-code remover any Eiffel features that are not called from the Eiffel system's root, and might thus be dead-code-removed by the optimization mechanism.
|
||||
To do this, make the appropriate features and classes [[Group Options|visible]] .
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|CECIL]]
|
||||
[[Property:weight|3]]
|
||||
[[Property:uuid|c03112b8-578e-cc1a-ee13-c6928b787529]]
|
||||
* [[CECIL: Introduction|Introduction]]
|
||||
* [[Compiling an Eiffel system for CECIL|Compiling an Eiffel system for CECIL]]
|
||||
* [[Using a CECIL archive|Using a CECIL archive]]
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
[[Property:title|Using a CECIL archive]]
|
||||
[[Property:weight|2]]
|
||||
[[Property:uuid|e8438c9b-65ae-368f-6559-a0d5b28db4b7]]
|
||||
==Linking the CECIL archive into a program==
|
||||
The CECIL archive already incorporates the Eiffel run-time. To use the functions provided in the CECIL archive, simply write the C programs according to the CECIL specifications of ETL, and then include the CECIL archive in the link line of your C application. This line looks like:
|
||||
on Unix/linux:
|
||||
|
||||
Reference in New Issue
Block a user