engine/source/preprocessorlib/pp_parser.c
/**
 * Allocates a subparser to expand a macro.  This is a convenience constructor.
 * @param self the object
 * @param parent the parent parser
 * @param numParams number of macros to free from the start of the macro list
 *        when freeing this parser (0 for non-function macros)
 * @return the newly allocated parser
 */
Allocates a subparser to expand a macro.  This is a convenience constructor.
@param self the object
@param parent the parent parser
@param numParams number of macros to free from the start of the macro list
when freeing this parser (0 for non-function macros)
@return the newly allocated parser
Allocates a subparser to expand a macro . This is a convenience constructor . @param self the object @param parent the parent parser @param numParams number of macros to free from the start of the macro list when freeing this parser ( 0 for non - function macros ) @return the newly allocated parser
pp_parser* pp_parser_alloc_macro(pp_parser* parent, char* macroContents, List* params, pp_parser_type type)
{
    pp_parser *self = pp_parser_alloc(parent, parent->filename, macroContents, type);
    self->params = params;
    self->numParams = params ? List_GetSize(params) : 0;
    return self;
}
pp_parser * pp_parser_alloc_macro ( pp_parser * parent , char * macroContents , List * params , pp_parser_type type ) { pp_parser * self = pp_parser_alloc ( parent , parent -> filename , macroContents , type ) ; self -> params = params ; self -> numParams = params ? List_GetSize ( params ) : 0 ; return self ; }
Allocates a subparser to expand a macro.
Allocates a subparser to expand a macro .