Provided by: tcllib_1.21+dfsg-1_all bug

NAME

       fileutil::magic::cgen - Generator core for compiler of magic(5) files

SYNOPSIS

       package require Tcl  8.4

       package require fileutil::magic::cgen  ?1.2.0?

       package require fileutil::magic::rt  ?1.2.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.

BUGS, IDEAS, FEEDBACK

       This document, and the package it describes,  will  undoubtedly  contain  bugs  and  other
       problems.   Please  report  such  in the category fileutil :: magic of the Tcllib Trackers
       [http://core.tcl.tk/tcllib/reportlist].  Please also report any ideas for enhancements you
       may have for either package and/or documentation.

       When proposing code changes, please provide unified diffs, i.e the output of diff -u.

       Note further that attachments are strongly preferred over inlined patches. Attachments can
       be made by going to the Edit form of the ticket immediately after its creation,  and  then
       using the left-most button in the secondary navigation bar.

SEE ALSO

       file(1), fileutil, magic(5)

KEYWORDS

       file recognition, file type, file utilities, mime, type

CATEGORY

       Programming tools