コード例 #1
0
ファイル: Globals.c プロジェクト: charlesw1234/cocoxml
void
CcGlobals_NewSection(CcGlobals_t * self, const char * secname,
		     CcsPosition_t * pos)
{
    CcSection_t * section = (CcSection_t *)
	CcArrayList_New(&self->sections, CcObject(&SectionType));
    section->name = CcStrdup(secname);
    section->pos = pos;
}
コード例 #2
0
ファイル: Syntax.c プロジェクト: charlesw1234/cocoxml
int
CcSyntax_SyncError(CcSyntax_t * self, const CcSymbol_t * sym)
{
    CcSyntaxError_t * error = (CcSyntaxError_t *)
	CcArrayList_New(&self->errors, CcObject(&CcSyntaxErrorType));
    error->type = cet_sync;
    error->sym = sym;
    return error->base.index;
}
コード例 #3
0
ファイル: Syntax.c プロジェクト: charlesw1234/cocoxml
static void
CcSyntax_Errors(CcSyntax_t * self)
{
    CcArrayListIter_t iter;
    const CcSymbol_t * sym;
    CcSyntaxError_t * error;
    const CcArrayList_t * terminals = &self->globals->symtab.terminals;
    for (sym = (const CcSymbol_t *)CcArrayList_FirstC(terminals, &iter);
	 sym; sym = (const CcSymbol_t *)CcArrayList_NextC(terminals, &iter)) {
	error = (CcSyntaxError_t *)
	    CcArrayList_New(&self->errors, CcObject(&CcSyntaxErrorType));
	error->type = cet_t;
	error->sym = sym;
    }
}
コード例 #4
0
ファイル: EBNF.c プロジェクト: charlesw1234/cocoxml
CcNode_t *
CcEBNF_NewNode(CcEBNF_t * self, CcNode_t * node)
{
    return (CcNode_t *)CcArrayList_New(&self->nodes, &node->base);
}
コード例 #5
0
ファイル: XmlSpec.c プロジェクト: dcsouthwick/cocoxml
void
CcXmlSpec_AddAttr(CcXmlSpec_t * self, const char * tokenName,
		  const CcsToken_t * token)
{
    CcArrayList_New(&self->Attrs, CcXmlData(tokenName, token));
}
コード例 #6
0
ファイル: XmlSpec.c プロジェクト: dcsouthwick/cocoxml
void
CcXmlSpec_AddProcessInstruction(CcXmlSpec_t * self, const char * tokenName,
				const CcsToken_t * token)
{
    CcArrayList_New(&self->PInstructions, CcXmlData(tokenName, token));
}