NONA(1)

NAME
nona - code selector description translator

SYNOPSIS
nona [ -c++ -v -debug -export -pprefix] specification-file

DESCRIPTION
Command nona translates code selector description (CS) which is described in specification file into code for solving code selection (tree matcher) and possibly other back-end tasks. The specification file must have suffix `.nona' determined by CS builds cover of low level internal representation (which must be a directed acyclic graph) by the tree patterns with minimal cost on the first bottom up pass and fulfills actions associated with the choiced tree patterns on the second bottom up pass.

Generated code consists of interface and implementation files having the same names as one of specification file and correspondingly suffixes `.h' and `.c' (C code) or `.cpp' (C++ code).

Full documentation of OKA is in OKA User's manual.

OPTIONS
The options which are known for NONA are:

-c++
    NONA generates C++ code instead of C code (default).

-v  NONA outputs statistic information to standard output stream.

-debug
    NONA outputs debugging information during execution of function `CS_find_cover' and `CS_traverse_cover' (see generated code).

-export
    NONA generates macros defining identifiers of terminals as integer constants and inclusion of their in the interface file. Usually the user himself declares the identifiers in a C declarations section.

-pprefix
    NONA generates names starting with prefix `prefix' instead of `CS'.

FILES
file.nona
    NONA specification file
file.c
    generated C implementation file
file.cpp
    generated C++ implementation file
file.h
    generated interface file
There are no any temporary files used by NONA.

ENVIRONMENT
There are no environment variables which affect NONA behavior.

DIAGNOSTICS
NONA diagnostics is self-explanatory.

AUTHOR
Vladimir N. Makarov, vmakarov@users.sourceforge.net

SEE ALSO
msta(1), shilka(1), sprut(1), oka(1). NONA manual.

BUGS
Please, report bugs to cocom-bugs@lists.sourceforge.net.