libyasm
Data Fields

yasm_parser_module Struct Reference

YASM parser module interface. More...

#include <parser.h>

Data Fields

const char * name
 One-line description of the parser.
const char * keyword
 Keyword used to select parser on the command line.
const char ** preproc_keywords
 NULL-terminated list of preprocessors that are valid to use with this parser.
const char * default_preproc_keyword
 Default preprocessor.
const yasm_stdmacstdmacs
 NULL-terminated list of standard macro lookups.
void(* do_parse )(yasm_object *object, yasm_preproc *pp, int save_input, yasm_linemap *linemap, yasm_errwarns *errwarns)
 Parse a source file into an object.

Detailed Description

YASM parser module interface.

The "front end" of the assembler.

Definition at line 34 of file parser.h.


Field Documentation

Default preprocessor.

Definition at line 48 of file parser.h.

void(* yasm_parser_module::do_parse)(yasm_object *object, yasm_preproc *pp, int save_input, yasm_linemap *linemap, yasm_errwarns *errwarns)

Parse a source file into an object.

Parameters:
objectobject to parse into (already created)
pppreprocessor
save_inputnonzero if the parser should save the original lines of source into the object's linemap (via yasm_linemap_add_data()).
errwarnserror/warning set
Note:
Parse errors and warnings are stored into errwarns.

Definition at line 63 of file parser.h.

NULL-terminated list of preprocessors that are valid to use with this parser.

The raw preprocessor (raw_preproc) should always be in this list so it's always possible to have no preprocessing done.

Definition at line 45 of file parser.h.

NULL-terminated list of standard macro lookups.

NULL if none.

Definition at line 51 of file parser.h.


The documentation for this struct was generated from the following file: