cgen (3)
NAME
fileutil::magic::cgen - Generator core for compiler of magic(5) filesSYNOPSIS
package require Tcl 8.4package require fileutil::magic::cgen ?1.0?
package require fileutil::magic::rt ?1.0?
package require struct::tree
package require struct::list
::fileutil::magic::cgen::2tree script
::fileutil::magic::cgen::treedump tree
::fileutil::magic::cgen::treegen tree node
DESCRIPTION
This package provides the generator backend for a compiler of magic(5) files into recognizers based on the fileutil::magic::rt recognizer runtime package. For the compiler frontend using this generator see the package fileutil::magic::cfront.
COMMANDS
- ::fileutil::magic::cgen::2tree script
-
This command converts the recognizer specified by the script
into a tree and returns the object command of that tree as its
result. It uses the package struct::tree for the tree.
The script is in the format specified by magic(5).
- ::fileutil::magic::cgen::treedump tree
- This command takes a tree as generated by ::fileutil::magic::cgen::2tree and returns a string encoding the tree for human consumption, to aid in debugging.
- ::fileutil::magic::cgen::treegen tree node
- This command takes a tree as generated by ::fileutil::magic::cgen::2tree and returns a Tcl script, the recognizer for the file types represented by the sub-tree rooted at the node. The generated script makes extensive use of the commands provided by the recognizer runtime package fileutil::magic::rt to perform its duties.