# [styx_ant.h] Language Interface

## contents

#include "ptm.h"
#include "gls_abs.h"

## symbol objects - init & quit

    void styx_initSymbols()

    void styx_quitSymbols()

## Types & Constants

styx | abstract type

styxSource | abstract type
styxOptCfg | abstract type
styxQlxDfn | abstract type
styxQlxCat | abstract type
styxQlxGrp | abstract type
styxQlxOpt | abstract type
styxExp | abstract type
styxOptNat | abstract type
styxLimit | abstract type
styxDfn | abstract type
styxCat | abstract type
styxDfnOpt | abstract type
styxLay | abstract type
styxPrd | abstract type
styxMbr | abstract type
styxConflict | abstract type
styxState | abstract type
styxToken | abstract type
styxRule | abstract type

## Access to Tokens

    c_bool Tstyx_Ide(GLS_Tok x)

    c_bool Tstyx_Nat(GLS_Tok x)

    c_bool Tstyx_Set(GLS_Tok x)

    c_bool Tstyx_Seq(GLS_Tok x)

## Access to Terms

    c_bool styx_styx(PT_Abs_Term x, styx* x1)

    c_bool styx_Source(PT_Abs_Term x, styxSource* x1)

    c_bool styx_OptCfg(PT_Abs_Term x, styxOptCfg* x1)

    c_bool styx_QlxDfn(PT_Abs_Term x, styxQlxDfn* x1)

    c_bool styx_QlxCat(PT_Abs_Term x, styxQlxCat* x1)

    c_bool styx_QlxGrp(PT_Abs_Term x, styxQlxGrp* x1)

    c_bool styx_QlxOpt(PT_Abs_Term x, styxQlxOpt* x1)

    c_bool styx_Exp(PT_Abs_Term x, styxExp* x1)

    c_bool styx_OptNat(PT_Abs_Term x, styxOptNat* x1)

    c_bool styx_Limit(PT_Abs_Term x, styxLimit* x1)

    c_bool styx_Dfn(PT_Abs_Term x, styxDfn* x1)

    c_bool styx_Cat(PT_Abs_Term x, styxCat* x1)

    c_bool styx_DfnOpt(PT_Abs_Term x, styxDfnOpt* x1)

    c_bool styx_Lay(PT_Abs_Term x, styxLay* x1)

    c_bool styx_Prd(PT_Abs_Term x, styxPrd* x1)

    c_bool styx_Mbr(PT_Abs_Term x, styxMbr* x1)

    c_bool styx_Conflict(PT_Abs_Term x, styxConflict* x1)

    c_bool styx_State(PT_Abs_Term x, styxState* x1)

    c_bool styx_Token(PT_Abs_Term x, styxToken* x1)

    c_bool styx_Rule(PT_Abs_Term x, styxRule* x1)

## styx

    c_bool styx_Start_Source(styx x, styxSource* x1)
    #define styx_Start_0   styx_Start_Source

## Source

    c_bool styxSource_root(styxSource x, styxOptNat* x1, GLS_Tok* x2,
                           GLS_Lst(styxQlxDfn)* x3, styxOptCfg* x4)

## OptCfg

    c_bool styxOptCfg_non(styxOptCfg x)

    c_bool styxOptCfg_cfg(styxOptCfg x, GLS_Lst(styxDfn)* x1, GLS_Lst(styxConflict)* x2)

## QlxDfn

    c_bool styxQlxDfn_defd(styxQlxDfn x, GLS_Tok* x1)

    c_bool styxQlxDfn_defn(styxQlxDfn x, styxQlxCat* x1, styxQlxOpt* x2,
                           styxQlxGrp* x3, GLS_Tok* x4,
                           styxQlxGrp* x5, styxExp* x6)

    c_bool styxQlxDfn_igrp(styxQlxDfn x, GLS_Tok* x1)

    c_bool styxQlxDfn_tgrp(styxQlxDfn x, GLS_Tok* x1)

    c_bool styxQlxDfn_mgrp(styxQlxDfn x, GLS_Tok* x1, GLS_Lst(GLS_Tok)* x2)

    c_bool styxQlxDfn_xgrp(styxQlxDfn x, GLS_Tok* x1)

## QlxCat

    c_bool styxQlxCat_comC(styxQlxCat x)

    c_bool styxQlxCat_indC(styxQlxCat x)

    c_bool styxQlxCat_letC(styxQlxCat x)

    c_bool styxQlxCat_tokC(styxQlxCat x)

    c_bool styxQlxCat_lanC(styxQlxCat x)

    c_bool styxQlxCat_ignC(styxQlxCat x)

## QlxGrp

    c_bool styxQlxGrp_non(styxQlxGrp x)

    c_bool styxQlxGrp_pigrp(styxQlxGrp x)

    c_bool styxQlxGrp_pop(styxQlxGrp x)

    c_bool styxQlxGrp_igrp(styxQlxGrp x)

    c_bool styxQlxGrp_pgrp(styxQlxGrp x, GLS_Tok* x1)

    c_bool styxQlxGrp_grp(styxQlxGrp x, GLS_Tok* x1)

## QlxOpt

    c_bool styxQlxOpt_ignca(styxQlxOpt x)

    c_bool styxQlxOpt_non(styxQlxOpt x)

## Exp

    c_bool styxExp_conc(styxExp x, styxExp* x1, styxExp* x2)

    c_bool styxExp_diff(styxExp x, styxExp* x1, styxExp* x2)

    c_bool styxExp_sequ(styxExp x, GLS_Tok* x1)

    c_bool styxExp_plusn(styxExp x, styxExp* x1, styxLimit* x2)

    c_bool styxExp_plus0(styxExp x, styxExp* x1)

    c_bool styxExp_dyck(styxExp x, styxExp* x1, styxExp* x2,
                        styxExp* x3)

    c_bool styxExp_non(styxExp x)

    c_bool styxExp_opt(styxExp x, styxExp* x1)

    c_bool styxExp_range(styxExp x, styxExp* x1, styxExp* x2)

    c_bool styxExp_plus(styxExp x, styxExp* x1)

    c_bool styxExp_epat(styxExp x, styxExp* x1, GLS_Tok* x2,
                        styxExp* x3)

    c_bool styxExp_set(styxExp x, GLS_Tok* x1)

    c_bool styxExp_union(styxExp x, styxExp* x1, styxExp* x2)

    c_bool styxExp_quot(styxExp x, styxExp* x1, styxExp* x2)

    c_bool styxExp_ident(styxExp x, GLS_Tok* x1)

    c_bool styxExp_star(styxExp x, styxExp* x1)

    c_bool styxExp_spat(styxExp x, styxExp* x1, GLS_Tok* x2,
                        styxExp* x3)

## OptNat

    c_bool styxOptNat_non(styxOptNat x)

    c_bool styxOptNat_nat(styxOptNat x, GLS_Tok* x1)

## Limit

    c_bool styxLimit_range(styxLimit x, GLS_Tok* x1, styxOptNat* x2)

    c_bool styxLimit_ntime(styxLimit x, GLS_Tok* x1)

## Dfn

    c_bool styxDfn_defn(styxDfn x, styxCat* x1, styxDfnOpt* x2,
                        GLS_Tok* x3, GLS_Lst(styxPrd)* x4)

## Cat

    c_bool styxCat_letC(styxCat x)

    c_bool styxCat_bgnC(styxCat x)

## DfnOpt

    c_bool styxDfnOpt_non(styxDfnOpt x)

    c_bool styxDfnOpt_errnt(styxDfnOpt x)

## Lay

    c_bool styxLay_grp(styxLay x)

    c_bool styxLay_rec(styxLay x)

    c_bool styxLay_dft(styxLay x)

## Prd

    c_bool styxPrd_prod(styxPrd x, styxLay* x1, GLS_Tok* x2,
                        GLS_Lst(styxMbr)* x3)

## Mbr

    c_bool styxMbr_opt(styxMbr x, GLS_Lst(GLS_Tok)* x1, styxMbr* x2,
                       GLS_Lst(GLS_Tok)* x3)

    c_bool styxMbr_dtok(styxMbr x, GLS_Tok* x1, GLS_Tok* x2)

    c_bool styxMbr_klst1(styxMbr x, GLS_Lst(GLS_Tok)* x1, styxMbr* x2,
                         GLS_Lst(GLS_Tok)* x3, GLS_Lst(GLS_Tok)* x4)

    c_bool styxMbr_tkm(styxMbr x, GLS_Tok* x1)

    c_bool styxMbr_ntm(styxMbr x, GLS_Tok* x1)

    c_bool styxMbr_klst0(styxMbr x, GLS_Lst(GLS_Tok)* x1, styxMbr* x2,
                         GLS_Lst(GLS_Tok)* x3, GLS_Lst(GLS_Tok)* x4)

    c_bool styxMbr_else(styxMbr x)

## Conflict

    c_bool styxConflict_defn(styxConflict x, styxState* x1, styxToken* x2,
                             GLS_Lst(styxRule)* x3)

## State

    c_bool styxState_nat(styxState x, GLS_Tok* x1)

    c_bool styxState_ide(styxState x, GLS_Tok* x1)

    c_bool styxState_seq(styxState x, GLS_Tok* x1)

## Token

    c_bool styxToken_seq(styxToken x, GLS_Tok* x1)

    c_bool styxToken_ide(styxToken x, GLS_Tok* x1)

## Rule

    c_bool styxRule_red(styxRule x, GLS_Tok* x1, GLS_Tok* x2)