Java Compat Mapping for Modules

A Slice module maps to a Java package with the same name as the Slice module. The mapping preserves the nesting of the Slice definitions. For example:

Slice
// Definitions at global scope here...

module M1
{
    // Definitions for M1 here...
    module M2
    {
        // Definitions for M2 here...
    }
}

// ...

module M1    // Reopen M1
{
    // More definitions for M1 here...
}

This definition maps to the corresponding Java definitions:

Java Compat
package M1;
// Definitions for M1 here...

package M1.M2;
// Definitions for M2 here...

package M1;
// Definitions for M1 here...

Note that these definitions appear in the appropriate source files; source files for definitions in module M1 are generated in directory M1 underneath the top-level directory, and source files for definitions for module M2 are generated in directory M1/M2 underneath the top-level directory. You can set the top-level output directory using the --output-dir option with slice2java.

You can also specify an enclosing Java package with the java:package metadata directive.

See Also