# 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
## Defines
#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) ((int) (((char *)(zz_addr_zz)) - ((char *)(0))))
#define | bnfdef_common
#define | bnfref_common
#define | NULLP (*((char *) 0))
#define | mksav(qqoff) (*((char *) qqoff))
#define | mkoff(qqtype, qqfield) ((size_t) (&((qqtype *) 0)->qqfield))
#define | althd(qqnme) bnfref_struct **qqnme[]
#define | altcnt(qqcnt) (bnfref_struct **) (qqcnt)
#define | mkaref(qqref) (bnfref_struct **) (qqref)
#define | comphd(qqnme) bnfref_struct *qqnme[]
#define | compcnt(qqcnt) (bnfref_struct *) (qqcnt)
#define | mkcref(qqref) (bnfref_struct *) (&qqref)
#define | gdef(qqnme, qqsze, qqlnk, qqcomps)
#define | npdef(qqnme, qqalts) bnfNPdef_struct qqnme = { bnfNP, #qqnme, (bnfref_struct ***) qqalts }
#define | pdef(qqnme, qqalts) bnfPdef_struct qqnme = { bnfP, #qqnme, (bnfref_struct ***) 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) bnfIdef_struct qqnme = { bnfI, #qqnme, (int) (qqval) }
#define | ldef(qqnme, qqdflgs, qqtxt) bnfLdef_struct qqnme = { bnfL, #qqnme, (flags) (qqdflgs), (char *) (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) bnfLBref_struct qqnme = { bnfDS, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }
#define | dbref(qqnme, qqref) bnfLBref_struct qqnme = { bnfDL, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }
#define | rfref(qqnme, qqref) bnfLBref_struct qqnme = { bnfRS, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }
#define | rbref(qqnme, qqref) bnfLBref_struct qqnme = { bnfRL, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }
#define | iref(qqnme, qqref, qqoff)
#define | lref(qqnme, qqref) bnfLref_struct qqnme = { bnfL, #qqnme, (bnfdef_struct *) &qqref, (flags) 0 }
#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)

## Define Documentation

#define bnfadv 1<<0

Definition at line 167 of file dylib_bnfrdr.h.

#define bnfsvnd 1<<1

Definition at line 168 of file dylib_bnfrdr.h.

#define bnfsvnm 1<<2

Definition at line 169 of file dylib_bnfrdr.h.

#define bnflst 1<<0

Definition at line 205 of file dylib_bnfrdr.h.

#define bnfstore 1<<1

Definition at line 206 of file dylib_bnfrdr.h.

#define bnfatsgn 1<<2

Definition at line 207 of file dylib_bnfrdr.h.

#define bnfstbg 1<<3

Definition at line 208 of file dylib_bnfrdr.h.

#define bnfflt 1<<4

Definition at line 209 of file dylib_bnfrdr.h.

#define bnfcs 1<<5

Definition at line 210 of file dylib_bnfrdr.h.

#define bnfmin 1<<6

Definition at line 211 of file dylib_bnfrdr.h.

#define bnfsv 1<<7

Definition at line 212 of file dylib_bnfrdr.h.

#define bnfexact 1<<8

Definition at line 213 of file dylib_bnfrdr.h.

#define bnfdebug 1<<9

Definition at line 214 of file dylib_bnfrdr.h.

#define bnfdbl 1<<10

Definition at line 215 of file dylib_bnfrdr.h.

#define addrToInt | ( | zz_addr_zz |  | ) | ((int) (((char *)(zz_addr_zz)) - ((char *)(0))))

Definition at line 225 of file dylib_bnfrdr.h.

#define bnfdef_common

Value:

    bnftype_enum type ; \
                          const char *name ;

Definition at line 263 of file dylib_bnfrdr.h.

#define bnfref_common

Value:

    bnftype_enum type ; \
                          const char *name ; \
                          bnfdef_struct *defn ; \
                          flags uflgs ;

Definition at line 459 of file dylib_bnfrdr.h.

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

Definition at line 557 of file dylib_bnfrdr.h.

#define mksav | ( | qqoff |  | ) | (*((char *) qqoff))

Definition at line 558 of file dylib_bnfrdr.h.

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

Definition at line 559 of file dylib_bnfrdr.h.

#define althd | ( | qqnme |  | ) | bnfref_struct **qqnme[]

Definition at line 576 of file dylib_bnfrdr.h.

#define altcnt | ( | qqcnt |  | ) | (bnfref_struct **) (qqcnt)

Definition at line 577 of file dylib_bnfrdr.h.

#define mkaref | ( | qqref |  | ) | (bnfref_struct **) (qqref)

Definition at line 578 of file dylib_bnfrdr.h.

#define comphd | ( | qqnme |  | ) | bnfref_struct *qqnme[]

Definition at line 580 of file dylib_bnfrdr.h.

#define compcnt | ( | qqcnt |  | ) | (bnfref_struct *) (qqcnt)

Definition at line 581 of file dylib_bnfrdr.h.

#define mkcref | ( | qqref |  | ) | (bnfref_struct *) (&qqref)

Definition at line 582 of file dylib_bnfrdr.h.

#define gdef | ( | qqnme,
|  | qqsze,
|  | qqlnk,
|  | qqcomps |  | ) |

Value:

    bnfGdef_struct qqnme = { bnfG, #qqnme, (int) (qqsze), (int) (qqlnk), \
                             (bnfref_struct **) qqcomps }

Definition at line 592 of file dylib_bnfrdr.h.

#define npdef | ( | qqnme,
|  | qqalts |  | ) | bnfNPdef_struct qqnme = { bnfNP, #qqnme, (bnfref_struct ***) qqalts }

Definition at line 596 of file dylib_bnfrdr.h.

#define pdef | ( | qqnme,
|  | qqalts |  | ) | bnfPdef_struct qqnme = { bnfP, #qqnme, (bnfref_struct ***) qqalts }

Definition at line 599 of file dylib_bnfrdr.h.

#define tdef | ( | qqnme,
|  | qqttype,
|  | qqparm,
|  | qqval |  | ) |

Value:

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

Definition at line 602 of file dylib_bnfrdr.h.

#define tqdef | ( | qqnme,
|  | qqschr,
|  | qqechr,
|  | qqval |  | ) |

Value:

    bnfTdef_struct qqnme = { bnfT, #qqnme, bnfttQ, (char) qqschr, (char) qqechr,\
                             0, (char *) (qqval) }

Definition at line 606 of file dylib_bnfrdr.h.

#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 }

Definition at line 610 of file dylib_bnfrdr.h.

#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 }

Definition at line 616 of file dylib_bnfrdr.h.

#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) }

Definition at line 622 of file dylib_bnfrdr.h.

#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) }

Definition at line 628 of file dylib_bnfrdr.h.

#define idef | ( | qqnme,
|  | qqval |  | ) | bnfIdef_struct qqnme = { bnfI, #qqnme, (int) (qqval) }

Definition at line 634 of file dylib_bnfrdr.h.

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

Definition at line 637 of file dylib_bnfrdr.h.

#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.

#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.

#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.

#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.

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

Definition at line 660 of file dylib_bnfrdr.h.

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

Definition at line 663 of file dylib_bnfrdr.h.

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

Definition at line 666 of file dylib_bnfrdr.h.

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

Definition at line 669 of file dylib_bnfrdr.h.

#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.

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

Definition at line 676 of file dylib_bnfrdr.h.

#define dfrefdbg | ( | qqnme,
|  | qqref |  | ) |

Value:

    bnfLBref_struct qqnme = { bnfDS, #qqnme, (bnfdef_struct *) &qqref, \
                              (flags) bnfdebug }

Definition at line 687 of file dylib_bnfrdr.h.

#define dbrefdbg | ( | qqnme,
|  | qqref |  | ) |

Value:

    bnfLBref_struct qqnme = { bnfDL, #qqnme, (bnfdef_struct *) &qqref, \
                              (flags) bnfdebug }

Definition at line 691 of file dylib_bnfrdr.h.

#define rfrefdbg | ( | qqnme,
|  | qqref |  | ) |

Value:

    bnfLBref_struct qqnme = { bnfRS, #qqnme, (bnfdef_struct *) &qqref, \
                              (flags) bnfdebug }

Definition at line 695 of file dylib_bnfrdr.h.

#define rbrefdbg | ( | qqnme,
|  | qqref |  | ) |

Value:

    bnfLBref_struct qqnme = { bnfRL, #qqnme, (bnfdef_struct *) &qqref, \
                              (flags) bnfdebug }

Definition at line 699 of file dylib_bnfrdr.h.

#define lrefdbg | ( | qqnme,
|  | qqref |  | ) |

Value:

    bnfLref_struct qqnme = { bnfL, #qqnme, (bnfdef_struct *) &qqref, \
                              (flags) bnfdebug }

Definition at line 703 of file dylib_bnfrdr.h.

## Typedef Documentation

typedef bnfNPdef_struct bnfPdef_struct

Definition at line 313 of file dylib_bnfrdr.h.

typedef struct bnfref_struct_tag bnfref_struct

typedef bnfref_struct bnfLBref_struct

Definition at line 473 of file dylib_bnfrdr.h.

typedef bnfref_struct bnfLref_struct

Definition at line 474 of file dylib_bnfrdr.h.

typedef struct bnfref_type2 bnfTref_struct

Definition at line 490 of file dylib_bnfrdr.h.

typedef struct bnfref_type2 bnfIref_struct

Definition at line 491 of file dylib_bnfrdr.h.

typedef struct bnfref_type3 bnfGref_struct

Definition at line 512 of file dylib_bnfrdr.h.

typedef struct bnfref_type3 bnfNPref_struct

Definition at line 513 of file dylib_bnfrdr.h.

typedef struct bnfref_type3 bnfPref_struct

Definition at line 514 of file dylib_bnfrdr.h.

## Enumeration Type Documentation

enum bnftype_enum

Enumerator:

  bnfG |
  bnfNP |
  bnfP |
  bnfT |
  bnfDS |
  bnfDL |
  bnfRS |
  bnfRL |
  bnfI |
  bnfL |

Definition at line 107 of file dylib_bnfrdr.h.

enum bnfttype_enum

Enumerator:

  bnfttNIL |
  bnfttN |
  bnfttID |
  bnfttD |
  bnfttF |
  bnfttQ |

Definition at line 124 of file dylib_bnfrdr.h.

enum bnflblsrc_enum

Enumerator:

  bnfncBNF |
  bnfncS |
  bnfncC |
  bnfncN |

Definition at line 147 of file dylib_bnfrdr.h.

## Function Documentation

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 |
| ) |  |  |

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines