DyLP 1.10.4
Loading...
Searching...
No Matches
dylib_bnfrdr.h File Reference
#include "dylib_io.h"
+ Include dependency graph for dylib_bnfrdr.h:

Go to the source code of this file.

Classes

struct  bnfdef_struct
 
struct  bnfGdef_struct
 
struct  bnfNPdef_struct
 
struct  bnfTdef_struct
 
struct  bnfIdef_struct
 
struct  bnfLdef_struct
 
struct  bnfLBdef_struct
 
union  bnfdef_any
 
struct  bnfref_struct_tag
 
struct  bnfref_type2
 
struct  bnfref_type3
 
union  bnfref_any
 
union  parse_any
 

Macros

#define bnfadv   1<<0
 
#define bnfsvnd   1<<1
 
#define bnfsvnm   1<<2
 
#define bnflst   1<<0
 
#define bnfstore   1<<1
 
#define bnfatsgn   1<<2
 
#define bnfstbg   1<<3
 
#define bnfflt   1<<4
 
#define bnfcs   1<<5
 
#define bnfmin   1<<6
 
#define bnfsv   1<<7
 
#define bnfexact   1<<8
 
#define bnfdebug   1<<9
 
#define bnfdbl   1<<10
 
#define addrToInt(zz_addr_zz)
 
#define bnfdef_common
 
#define bnfref_common
 
#define NULLP   (*((char *) 0))
 
#define mksav(qqoff)
 
#define mkoff(qqtype, qqfield)
 
#define althd(qqnme)
 
#define altcnt(qqcnt)
 
#define mkaref(qqref)
 
#define comphd(qqnme)
 
#define compcnt(qqcnt)
 
#define mkcref(qqref)
 
#define gdef(qqnme, qqsze, qqlnk, qqcomps)
 
#define npdef(qqnme, qqalts)
 
#define pdef(qqnme, qqalts)
 
#define tdef(qqnme, qqttype, qqparm, qqval)
 
#define tqdef(qqnme, qqschr, qqechr, qqval)
 
#define dfdef(qqnme, qqdflgs, qqnmcd, qqnm, qqsavnm, qqndcd, qqnd, qqsavnd, qqoff)
 
#define dbdef(qqnme, qqdflgs, qqnmcd, qqnm, qqsavnm, qqndcd, qqnd, qqsavnd, qqoff)
 
#define rfdef(qqnme, qqdflgs, qqnmcd, qqnm, qqsavnm, qqoff, qqndcd, qqnd, qqsavnd, qqoff2)
 
#define rbdef(qqnme, qqdflgs, qqnmcd, qqnm, qqsavnm, qqoff, qqndcd, qqnd, qqsavnd, qqoff2)
 
#define idef(qqnme, qqval)
 
#define ldef(qqnme, qqdflgs, qqtxt)
 
#define gref(qqnme, qqref, qquflgs, qqoff, qqsep)
 
#define npref(qqnme, qqref, qquflgs, qqsep)
 
#define pref(qqnme, qqref, qquflgs, qqoff, qqsep)
 
#define tref(qqnme, qqref, qquflgs, qqoff)
 
#define dfref(qqnme, qqref)
 
#define dbref(qqnme, qqref)
 
#define rfref(qqnme, qqref)
 
#define rbref(qqnme, qqref)
 
#define iref(qqnme, qqref, qqoff)
 
#define lref(qqnme, qqref)
 
#define dfrefdbg(qqnme, qqref)
 
#define dbrefdbg(qqnme, qqref)
 
#define rfrefdbg(qqnme, qqref)
 
#define rbrefdbg(qqnme, qqref)
 
#define lrefdbg(qqnme, qqref)
 

Typedefs

typedef bnfNPdef_struct bnfPdef_struct
 
typedef struct bnfref_struct_tag bnfref_struct
 
typedef bnfref_struct bnfLBref_struct
 
typedef bnfref_struct bnfLref_struct
 
typedef struct bnfref_type2 bnfTref_struct
 
typedef struct bnfref_type2 bnfIref_struct
 
typedef struct bnfref_type3 bnfGref_struct
 
typedef struct bnfref_type3 bnfNPref_struct
 
typedef struct bnfref_type3 bnfPref_struct
 

Enumerations

enum  bnftype_enum {
  bnfG , bnfNP , bnfP , bnfT ,
  bnfDS , bnfDL , bnfRS , bnfRL ,
  bnfI , bnfL
}
 
enum  bnfttype_enum {
  bnfttNIL , bnfttN , bnfttID , bnfttD ,
  bnfttF , bnfttQ
}
 
enum  bnflblsrc_enum { bnfncBNF , bnfncS , bnfncC , bnfncN }
 

Functions

void rdrinit (void)
 
void rdrclear (void)
 
bool parse (ioid chn, struct bnfref_type3 *bnfid, parse_any *result)
 
void bnfdbgctl (ioid dbgchn, bool dbgecho, bool warnzlbl, bool numlvl, bool tablvl)
 
void prtbnfref (ioid chn, bool echo, bnfref_struct *ref)
 
void prtbnfdef (ioid chn, bool echo, bnfdef_struct *def)
 

Macro Definition Documentation

◆ bnfadv

#define bnfadv   1<<0

Definition at line 167 of file dylib_bnfrdr.h.

◆ bnfsvnd

#define bnfsvnd   1<<1

Definition at line 168 of file dylib_bnfrdr.h.

◆ bnfsvnm

#define bnfsvnm   1<<2

Definition at line 169 of file dylib_bnfrdr.h.

◆ bnflst

#define bnflst   1<<0

Definition at line 205 of file dylib_bnfrdr.h.

◆ bnfstore

#define bnfstore   1<<1

Definition at line 206 of file dylib_bnfrdr.h.

◆ bnfatsgn

#define bnfatsgn   1<<2

Definition at line 207 of file dylib_bnfrdr.h.

◆ bnfstbg

#define bnfstbg   1<<3

Definition at line 208 of file dylib_bnfrdr.h.

◆ bnfflt

#define bnfflt   1<<4

Definition at line 209 of file dylib_bnfrdr.h.

◆ bnfcs

#define bnfcs   1<<5

Definition at line 210 of file dylib_bnfrdr.h.

◆ bnfmin

#define bnfmin   1<<6

Definition at line 211 of file dylib_bnfrdr.h.

◆ bnfsv

#define bnfsv   1<<7

Definition at line 212 of file dylib_bnfrdr.h.

◆ bnfexact

#define bnfexact   1<<8

Definition at line 213 of file dylib_bnfrdr.h.

◆ bnfdebug

#define bnfdebug   1<<9

Definition at line 214 of file dylib_bnfrdr.h.

◆ bnfdbl

#define bnfdbl   1<<10

Definition at line 215 of file dylib_bnfrdr.h.

◆ addrToInt

#define addrToInt ( zz_addr_zz)
Value:
((int) (((char *)(zz_addr_zz)) - ((char *)(0))))

Definition at line 225 of file dylib_bnfrdr.h.

◆ bnfdef_common

#define bnfdef_common
Value:
bnftype_enum type ; \
const char *name ;
bnftype_enum

Definition at line 263 of file dylib_bnfrdr.h.

◆ bnfref_common

#define bnfref_common
Value:
bnftype_enum type ; \
const char *name ; \
bnfdef_struct *defn ; \
flags uflgs ;
unsigned int flags
Definition dylib_std.h:95

Definition at line 459 of file dylib_bnfrdr.h.

◆ NULLP

#define NULLP   (*((char *) 0))

Definition at line 557 of file dylib_bnfrdr.h.

◆ mksav

#define mksav ( qqoff)
Value:
(*((char *) qqoff))

Definition at line 558 of file dylib_bnfrdr.h.

◆ mkoff

#define mkoff ( qqtype,
qqfield )
Value:
((size_t) (&((qqtype *) 0)->qqfield))

Definition at line 559 of file dylib_bnfrdr.h.

◆ althd

#define althd ( qqnme)
Value:

Definition at line 576 of file dylib_bnfrdr.h.

◆ altcnt

#define altcnt ( qqcnt)
Value:
(bnfref_struct **) (qqcnt)

Definition at line 577 of file dylib_bnfrdr.h.

◆ mkaref

#define mkaref ( qqref)
Value:
(bnfref_struct **) (qqref)

Definition at line 578 of file dylib_bnfrdr.h.

◆ comphd

#define comphd ( qqnme)
Value:
bnfref_struct *qqnme[]

Definition at line 580 of file dylib_bnfrdr.h.

◆ compcnt

#define compcnt ( qqcnt)
Value:
(bnfref_struct *) (qqcnt)

Definition at line 581 of file dylib_bnfrdr.h.

◆ mkcref

#define mkcref ( qqref)
Value:
(bnfref_struct *) (&qqref)

Definition at line 582 of file dylib_bnfrdr.h.

◆ gdef

#define gdef ( qqnme,
qqsze,
qqlnk,
qqcomps )
Value:
bnfGdef_struct qqnme = { bnfG, #qqnme, (int) (qqsze), (int) (qqlnk), \
(bnfref_struct **) qqcomps }
@ bnfG

Definition at line 592 of file dylib_bnfrdr.h.

◆ npdef

#define npdef ( qqnme,
qqalts )
Value:
bnfNPdef_struct qqnme = { bnfNP, #qqnme, (bnfref_struct ***) qqalts }
@ bnfNP

Definition at line 596 of file dylib_bnfrdr.h.

◆ pdef

#define pdef ( qqnme,
qqalts )
Value:
bnfPdef_struct qqnme = { bnfP, #qqnme, (bnfref_struct ***) qqalts }
@ bnfP

Definition at line 599 of file dylib_bnfrdr.h.

◆ tdef

#define tdef ( qqnme,
qqttype,
qqparm,
qqval )
Value:
bnfTdef_struct qqnme = { bnfT, #qqnme, qqttype, '\0', '\0', \
(int) (qqparm), (const char *) (qqval) }
@ bnfT

Definition at line 602 of file dylib_bnfrdr.h.

◆ tqdef

#define tqdef ( qqnme,
qqschr,
qqechr,
qqval )
Value:
bnfTdef_struct qqnme = { bnfT, #qqnme, bnfttQ, (char) qqschr, (char) qqechr,\
0, (char *) (qqval) }
@ bnfttQ

Definition at line 606 of file dylib_bnfrdr.h.

◆ dfdef

#define dfdef ( qqnme,
qqdflgs,
qqnmcd,
qqnm,
qqsavnm,
qqndcd,
qqnd,
qqsavnd,
qqoff )
Value:
bnfLBdef_struct qqnme = { bnfDS, #qqnme, (flags) (qqdflgs), qqnmcd, qqndcd, \
(int) (qqsavnm), (bnfref_struct *) &qqnm, \
(int) (qqsavnd), (bnfref_struct *) &qqnd, \
(int) (qqoff), 0 }
@ bnfDS

Definition at line 610 of file dylib_bnfrdr.h.

◆ dbdef

#define dbdef ( qqnme,
qqdflgs,
qqnmcd,
qqnm,
qqsavnm,
qqndcd,
qqnd,
qqsavnd,
qqoff )
Value:
bnfLBdef_struct qqnme = { bnfDL, #qqnme, (flags) (qqdflgs), qqnmcd, qqndcd, \
(int) (qqsavnm), (bnfref_struct *) &qqnm, \
(int) (qqsavnd), (bnfref_struct *) &qqnd, \
(int) (qqoff), 0 }
@ bnfDL

Definition at line 616 of file dylib_bnfrdr.h.

◆ rfdef

#define rfdef ( qqnme,
qqdflgs,
qqnmcd,
qqnm,
qqsavnm,
qqoff,
qqndcd,
qqnd,
qqsavnd,
qqoff2 )
Value:
bnfLBdef_struct qqnme = { bnfRS, #qqnme, (flags) (qqdflgs), qqnmcd, qqndcd, \
(int) (qqsavnm), (bnfref_struct *) &qqnm, \
(int) (qqsavnd), (bnfref_struct *) &qqnd, \
(int) (qqoff), (int) (qqoff2) }
@ bnfRS

Definition at line 622 of file dylib_bnfrdr.h.

◆ rbdef

#define rbdef ( qqnme,
qqdflgs,
qqnmcd,
qqnm,
qqsavnm,
qqoff,
qqndcd,
qqnd,
qqsavnd,
qqoff2 )
Value:
bnfLBdef_struct qqnme = { bnfRL, #qqnme, (flags) (qqdflgs), qqnmcd, qqndcd, \
(int) (qqsavnm), (bnfref_struct *) &qqnm, \
(int) (qqsavnd), (bnfref_struct *) &qqnd, \
(int) (qqoff), (int) (qqoff2) }
@ bnfRL

Definition at line 628 of file dylib_bnfrdr.h.

◆ idef

#define idef ( qqnme,
qqval )
Value:
bnfIdef_struct qqnme = { bnfI, #qqnme, (int) (qqval) }
@ bnfI

Definition at line 634 of file dylib_bnfrdr.h.

◆ ldef

#define ldef ( qqnme,
qqdflgs,
qqtxt )
Value:
bnfLdef_struct qqnme = { bnfL, #qqnme, (flags) (qqdflgs), (char *) (qqtxt) }
@ bnfL

Definition at line 637 of file dylib_bnfrdr.h.

◆ gref

#define gref ( qqnme,
qqref,
qquflgs,
qqoff,
qqsep )
Value:
bnfGref_struct qqnme = { bnfG, #qqnme, (bnfdef_struct *) &qqref, \
(flags) (qquflgs), (int) (qqoff), \
(bnfref_struct *) &qqsep }

Definition at line 642 of file dylib_bnfrdr.h.

◆ npref

#define npref ( qqnme,
qqref,
qquflgs,
qqsep )
Value:
bnfNPref_struct qqnme = { bnfNP, #qqnme, (bnfdef_struct *) &qqref, \
(flags) (qquflgs), (int) 0, (bnfref_struct *) &qqsep }

Definition at line 647 of file dylib_bnfrdr.h.

◆ pref

#define pref ( qqnme,
qqref,
qquflgs,
qqoff,
qqsep )
Value:
bnfPref_struct qqnme = { bnfP, #qqnme, (bnfdef_struct *) &qqref, \
(flags) (qquflgs), (int) (qqoff), \
(bnfref_struct *) &qqsep }

Definition at line 651 of file dylib_bnfrdr.h.

◆ tref

#define tref ( qqnme,
qqref,
qquflgs,
qqoff )
Value:
bnfTref_struct qqnme = { bnfT, #qqnme, (bnfdef_struct *) &qqref, \
(flags) qquflgs, (int) qqoff }

Definition at line 656 of file dylib_bnfrdr.h.

◆ dfref

#define dfref ( qqnme,
qqref )
Value:
bnfLBref_struct qqnme = { bnfDS, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }

Definition at line 660 of file dylib_bnfrdr.h.

◆ dbref

#define dbref ( qqnme,
qqref )
Value:
bnfLBref_struct qqnme = { bnfDL, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }

Definition at line 663 of file dylib_bnfrdr.h.

◆ rfref

#define rfref ( qqnme,
qqref )
Value:
bnfLBref_struct qqnme = { bnfRS, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }

Definition at line 666 of file dylib_bnfrdr.h.

◆ rbref

#define rbref ( qqnme,
qqref )
Value:
bnfLBref_struct qqnme = { bnfRL, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }

Definition at line 669 of file dylib_bnfrdr.h.

◆ iref

#define iref ( qqnme,
qqref,
qqoff )
Value:
bnfIref_struct qqnme = { bnfI, #qqnme, (bnfdef_struct *) &qqref, \
(flags) 0, (int) qqoff }

Definition at line 672 of file dylib_bnfrdr.h.

◆ lref

#define lref ( qqnme,
qqref )
Value:
bnfLref_struct qqnme = { bnfL, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }

Definition at line 676 of file dylib_bnfrdr.h.

◆ dfrefdbg

#define dfrefdbg ( qqnme,
qqref )
Value:
bnfLBref_struct qqnme = { bnfDS, #qqnme, (bnfdef_struct *) &qqref, \
#define bnfdebug

Definition at line 687 of file dylib_bnfrdr.h.

◆ dbrefdbg

#define dbrefdbg ( qqnme,
qqref )
Value:
bnfLBref_struct qqnme = { bnfDL, #qqnme, (bnfdef_struct *) &qqref, \

Definition at line 691 of file dylib_bnfrdr.h.

◆ rfrefdbg

#define rfrefdbg ( qqnme,
qqref )
Value:
bnfLBref_struct qqnme = { bnfRS, #qqnme, (bnfdef_struct *) &qqref, \

Definition at line 695 of file dylib_bnfrdr.h.

◆ rbrefdbg

#define rbrefdbg ( qqnme,
qqref )
Value:
bnfLBref_struct qqnme = { bnfRL, #qqnme, (bnfdef_struct *) &qqref, \

Definition at line 699 of file dylib_bnfrdr.h.

◆ lrefdbg

#define lrefdbg ( qqnme,
qqref )
Value:
bnfLref_struct qqnme = { bnfL, #qqnme, (bnfdef_struct *) &qqref, \

Definition at line 703 of file dylib_bnfrdr.h.

Typedef Documentation

◆ bnfPdef_struct

Definition at line 313 of file dylib_bnfrdr.h.

◆ bnfref_struct

◆ bnfLBref_struct

Definition at line 473 of file dylib_bnfrdr.h.

◆ bnfLref_struct

Definition at line 474 of file dylib_bnfrdr.h.

◆ bnfTref_struct

typedef struct bnfref_type2 bnfTref_struct

Definition at line 490 of file dylib_bnfrdr.h.

◆ bnfIref_struct

typedef struct bnfref_type2 bnfIref_struct

Definition at line 491 of file dylib_bnfrdr.h.

◆ bnfGref_struct

typedef struct bnfref_type3 bnfGref_struct

Definition at line 512 of file dylib_bnfrdr.h.

◆ bnfNPref_struct

typedef struct bnfref_type3 bnfNPref_struct

Definition at line 513 of file dylib_bnfrdr.h.

◆ bnfPref_struct

typedef struct bnfref_type3 bnfPref_struct

Definition at line 514 of file dylib_bnfrdr.h.

Enumeration Type Documentation

◆ bnftype_enum

Enumerator
bnfG 
bnfNP 
bnfP 
bnfT 
bnfDS 
bnfDL 
bnfRS 
bnfRL 
bnfI 
bnfL 

Definition at line 107 of file dylib_bnfrdr.h.

◆ bnfttype_enum

Enumerator
bnfttNIL 
bnfttN 
bnfttID 
bnfttD 
bnfttF 
bnfttQ 

Definition at line 124 of file dylib_bnfrdr.h.

◆ bnflblsrc_enum

Enumerator
bnfncBNF 
bnfncS 
bnfncC 
bnfncN 

Definition at line 147 of file dylib_bnfrdr.h.

Function Documentation

◆ rdrinit()

void rdrinit ( void )
extern

◆ rdrclear()

void rdrclear ( void )

◆ parse()

bool parse ( ioid chn,
struct bnfref_type3 * bnfid,
parse_any * result )
extern

◆ bnfdbgctl()

void bnfdbgctl ( ioid dbgchn,
bool dbgecho,
bool warnzlbl,
bool numlvl,
bool tablvl )
extern

◆ prtbnfref()

void prtbnfref ( ioid chn,
bool echo,
bnfref_struct * ref )
extern

◆ prtbnfdef()

void prtbnfdef ( ioid chn,
bool echo,
bnfdef_struct * def )