Each cluster (to group a set of classes) can be associated with its own folder. In Settings below, a cluster (e.g. cluster “root”) is set to recursive. Below we show how to add a new sub-cluster model
to the root
cluster.
For the recursive case, use the terminal (or windows explorer/finder) to create subfolders in cluster “root”. To add cluster model
“
>pwd .../project >ls EIFGENs/ project.ecf root/ > cd root > mkdir model > ls application.e model/
On compiling, the new cluster name model
appears. Right click on model
to add a new class in that cluster.
If we add the file FOO, we obtain
project/ ├── project.ecf └── root ├── application.e └── model └── foo.e
The ECF file looks as follows
<?xml version="1.0" encoding="ISO-8859-1"?> <system xmlns="http://www.eiffel.com/developers/xml/configuration-1-16-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-16-0 http://www.eiffel.com/developers/xml/configuration-1-16-0.xsd" name="project" uuid="1DB9100F-683A-438B-ABD2-601B82C4E570"> <target name="project"> <root class="APPLICATION" feature="make"/> <file_rule> <exclude>/CVS$</exclude> <exclude>/EIFGENs$</exclude> <exclude>/\.git$</exclude> <exclude>/\.svn$</exclude> </file_rule> <option warning="true"> <assertions precondition="true" postcondition="true" check="true" invariant="true" loop="true" supplier_precondition="true"/> </option> <setting name="console_application" value="true"/> <capability> <concurrency support="scoop"/> <void_safety support="all" use="all"/> </capability> <precompile name="base_pre" location="$ISE_PRECOMP\base-scoop-safe.ecf"/> <library name="base" location="$ISE_LIBRARY\library\base\base.ecf"/> <cluster name="root" location=".\root" recursive="true"/> </target> </system>