slice2freeze(1) Generates Freeze map and index classes in C++.


slice2freeze [options] [files]


slice2freeze generates Freeze map and index classes in C++.

Full documentation for slice2freeze is available online at:


-h, --help

Displays a help message.

-v, --version
Displays the compiler version.


Defines the preprocessor symbol NAME.


Defines the preprocessor symbol NAME with the value DEF.


Undefines the preprocessor symbol NAME.


Add the directory DIR to the search path for #include directives.


Print the preprocessor output on stdout.

--output-dir DIR

Place the generated files into directory DIR.

-d, --debug

Print debug information showing the operation of the Slice parser.


Permit use of the normally reserved prefix Ice for identifiers. Use this option only when compiling the source code for the Ice run time.


Permit use of underscores in Slice identifiers.

--header-ext EXT

Changes the file extension for the generated header files from the default h to EXT.

--source-ext EXT

Changes the file extension for the generated source files from the default cpp to EXT.

--add-header HDR[,GUARD]

This option adds an include directive for the specified header at the beginning of the generated source file (preceding any other include directives). If GUARD is specified, the include directive is protected by the specified guard.

--include-dir DIR

Modifies #include directives in source files to prepend the path name of each header file with the directory DIR.

--dll-export SYMBOL

Use SYMBOL to control DLL exports or imports. This option allows you to selectively export or import global symbols in the generated code.

--dict NAME,KEY,VALUE[,sort[,COMPARE]]

Generate a Freeze map class named NAME using KEY as key and VALUE as value. This option may be specified multiple times to generate several Freeze maps. NAME may be a scoped C++ name, such as Demo::Struct1ObjectMap. KEY and VALUE represent Slice types and therefore must use Slice syntax, such as bool or Ice::Identity. By default, keys are sorted using their binary Ice-encoded representation. Include sort to sort with the COMPARE functor class. If COMPARE is not specified, the default value is std::less<KEY>.

--dict-index MAP[,MEMBER] [,case-sensitive|case-insensitive][,sort[,COMPARE]]

Add an index to the Freeze map named MAP. If MEMBER is specified, the map value type must be a structure or a class, and MEMBER must be a member of this structure or class.

--index CLASS,TYPE,MEMBER [,case-sensitive|case-insensitive]

Generate an index class for a Freeze evictor. CLASS is the name of the class to be generated. TYPE denotes the type of class to be indexed (objects of different classes are not included in this index). MEMBER is the name of the data member in TYPE to index. When MEMBER has type string, it is possible to specify whether the index is case-sensitive or not. The default is case-sensitive.