diff options
| author | kr.angelov <kr.angelov@gmail.com> | 2013-02-11 13:51:12 +0000 |
|---|---|---|
| committer | kr.angelov <kr.angelov@gmail.com> | 2013-02-11 13:51:12 +0000 |
| commit | 90c3304147e3829b9ea7f73085e54d9d0811ca8b (patch) | |
| tree | 940fa49074899dcd6bbcc6da483671d56e52f968 /src/runtime/c/pgf/data.c | |
| parent | 10ef298fa00bd100bc854c5c8570a550f470dde4 (diff) | |
remove the pgf2yaml tool which was both broken and redundant. The declarations for generic programming from data.c are removed as well
Diffstat (limited to 'src/runtime/c/pgf/data.c')
| -rw-r--r-- | src/runtime/c/pgf/data.c | 201 |
1 files changed, 8 insertions, 193 deletions
diff --git a/src/runtime/c/pgf/data.c b/src/runtime/c/pgf/data.c index d7a44e31c..3e159fa6f 100644 --- a/src/runtime/c/pgf/data.c +++ b/src/runtime/c/pgf/data.c @@ -22,218 +22,33 @@ pgf_tokens_equal(PgfTokens t1, PgfTokens t2) return true; } - - -GU_DEFINE_TYPE(PgfTokens, GuSeq, gu_type(GuString)); - GU_DEFINE_TYPE(PgfCId, typedef, gu_type(GuString)); -GU_DEFINE_TYPE(GuStringL, GuList, gu_type(GuString)); - - #define gu_type__PgfCIdMap gu_type__GuStringMap typedef GuType_GuStringMap GuType_PgfCIdMap; #define GU_TYPE_INIT_PgfCIdMap GU_TYPE_INIT_GuStringMap -GU_DEFINE_TYPE(PgfCCat, struct, - GU_MEMBER_S(PgfCCat, cnccat, PgfCncCat), - GU_MEMBER_P(PgfCCat, lindefs, PgfFunIds), - GU_MEMBER(PgfCCat, prods, PgfProductionSeq)); - -GU_DEFINE_TYPE(PgfCCatId, shared, gu_type(PgfCCat)); - -GU_DEFINE_TYPE(PgfCCatIds, GuList, gu_type(PgfCCatId)); - -GU_DEFINE_TYPE(PgfCCatSeq, GuSeq, gu_type(PgfCCatId)); - -GU_DEFINE_TYPE(PgfAlternative, struct, - GU_MEMBER(PgfAlternative, form, PgfTokens), - GU_MEMBER_P(PgfAlternative, prefixes, GuStringL)); - - -GU_DEFINE_TYPE( - PgfSymbol, GuVariant, - GU_CONSTRUCTOR_S( - PGF_SYMBOL_CAT, PgfSymbolCat, - GU_MEMBER(PgfSymbolCat, d, int), - GU_MEMBER(PgfSymbolCat, r, int)), - GU_CONSTRUCTOR_S( - PGF_SYMBOL_LIT, PgfSymbolLit, - GU_MEMBER(PgfSymbolLit, d, int), - GU_MEMBER(PgfSymbolLit, r, int)), - GU_CONSTRUCTOR_S( - PGF_SYMBOL_VAR, PgfSymbolVar, - GU_MEMBER(PgfSymbolVar, d, int), - GU_MEMBER(PgfSymbolVar, r, int)), - GU_CONSTRUCTOR_S( - PGF_SYMBOL_KS, PgfSymbolKS, - GU_MEMBER(PgfSymbolKS, tokens, PgfTokens)), - GU_CONSTRUCTOR_S( - PGF_SYMBOL_KP, PgfSymbolKP, - GU_MEMBER(PgfSymbolKP, default_form, PgfTokens), - GU_MEMBER(PgfSymbolKP, n_forms, GuLength), - GU_FLEX_MEMBER(PgfSymbolKP, forms, PgfAlternative))); - -GU_DEFINE_TYPE( - PgfCncCat, struct, - GU_MEMBER(PgfCncCat, abscat, PgfCat), - GU_MEMBER_P(PgfCncCat, cats, PgfCCatIds), - GU_MEMBER(PgfCncCat, n_lins, size_t), - GU_FLEX_MEMBER(PgfCncCat, labels, GuString)); +GU_DEFINE_TYPE(PgfCCat, abstract); -// GU_DEFINE_TYPE(PgfSequence, GuList, gu_ptr_type(PgfSymbol)); -// GU_DEFINE_TYPE(PgfSequence, GuList, gu_type(PgfSymbol)); -GU_DEFINE_TYPE(PgfSequence, GuSeq, gu_type(PgfSymbol)); +GU_DEFINE_TYPE(PgfCncCat, abstract); -GU_DEFINE_TYPE(PgfFlags, GuStringMap, gu_type(PgfLiteral), &gu_null_variant); +GU_DEFINE_TYPE(PgfFlags, GuStringMap, gu_type(GuVariant), &gu_null_variant); -typedef PgfFlags* PgfFlagsP; +GU_DEFINE_TYPE(PgfProductionSeq, GuSeq, gu_type(GuVariant)); -GU_DEFINE_TYPE(PgfFlagsP, pointer, gu_type(PgfFlags)); - -GU_DEFINE_TYPE(PgfSequences, GuList, gu_type(PgfSequence)); - -GU_DEFINE_TYPE(PgfSeqId, typedef, gu_type(PgfSequence)); - -GU_DEFINE_TYPE( - PgfCncFun, struct, - GU_MEMBER(PgfCncFun, name, PgfCId), - GU_MEMBER(PgfCncFun, n_lins, GuLength), - GU_FLEX_MEMBER(PgfCncFun, lins, PgfSeqId)); - -GU_DEFINE_TYPE(PgfCncFuns, GuList, - GU_TYPE_LIT(referenced, _, gu_ptr_type(PgfCncFun))); - -GU_DEFINE_TYPE(PgfFunId, shared, gu_type(PgfCncFun)); - -GU_DEFINE_TYPE(PgfFunIds, GuList, gu_type(PgfFunId)); - -GU_DEFINE_TYPE( - PgfPArg, struct, - GU_MEMBER_P(PgfPArg, hypos, PgfCCatIds), - GU_MEMBER(PgfPArg, ccat, PgfCCatId)); - -GU_DEFINE_TYPE(PgfPArgs, GuSeq, gu_type(PgfPArg)); - -GU_DEFINE_TYPE( - PgfProduction, GuVariant, - GU_CONSTRUCTOR_S( - PGF_PRODUCTION_APPLY, PgfProductionApply, - GU_MEMBER(PgfProductionApply, fun, PgfFunId), - GU_MEMBER(PgfProductionApply, args, PgfPArgs)), - GU_CONSTRUCTOR_S( - PGF_PRODUCTION_COERCE, PgfProductionCoerce, - GU_MEMBER(PgfProductionCoerce, coerce, PgfCCatId)), - GU_CONSTRUCTOR_S( - PGF_PRODUCTION_EXTERN, PgfProductionExtern, - GU_MEMBER(PgfProductionExtern, callback, PgfLiteralCallback), - GU_MEMBER(PgfProductionExtern, lins, GuSeq)), - GU_CONSTRUCTOR_S( - PGF_PRODUCTION_META, PgfProductionMeta, - GU_MEMBER(PgfProductionMeta, args, PgfPArgs))); - -GU_DEFINE_TYPE(PgfProductions, GuList, gu_type(PgfProduction)); -GU_DEFINE_TYPE(PgfProductionSeq, GuSeq, gu_type(PgfProduction)); - -GU_DEFINE_TYPE( - PgfPatt, GuVariant, - GU_CONSTRUCTOR_S( - PGF_PATT_APP, PgfPattApp, - GU_MEMBER(PgfPattApp, ctor, PgfCId), - GU_MEMBER(PgfPattApp, n_args, GuLength), - GU_FLEX_MEMBER(PgfPattApp, args, PgfPatt)), - GU_CONSTRUCTOR_S( - PGF_PATT_VAR, PgfPattVar, - GU_MEMBER(PgfPattVar, var, PgfCId)), - GU_CONSTRUCTOR_S( - PGF_PATT_AS, PgfPattAs, - GU_MEMBER(PgfPattAs, var, PgfCId), - GU_MEMBER(PgfPattAs, patt, PgfPatt)), - GU_CONSTRUCTOR( - PGF_PATT_WILD, void), - GU_CONSTRUCTOR_S( - PGF_PATT_LIT, PgfPattLit, - GU_MEMBER(PgfPattLit, lit, PgfLiteral)), - GU_CONSTRUCTOR_S( - PGF_PATT_IMPL_ARG, PgfPattImplArg, - GU_MEMBER(PgfPattImplArg, patt, PgfPatt)), - GU_CONSTRUCTOR_S( - PGF_PATT_TILDE, PgfPattTilde, - GU_MEMBER(PgfPattTilde, expr, PgfExpr))); - -GU_DEFINE_TYPE( - PgfEquation, struct, - GU_MEMBER(PgfEquation, body, PgfExpr), - GU_MEMBER(PgfEquation, n_patts, GuLength), - GU_FLEX_MEMBER(PgfEquation, patts, PgfPatt)); - -// Distinct type so we can give it special treatment in the reader -GU_DEFINE_TYPE(PgfEquationsM, GuSeq, gu_type(PgfEquation)); - -GU_DEFINE_TYPE(PgfExprProb, struct, - GU_MEMBER(PgfExprProb, prob, double), - GU_MEMBER(PgfExprProb, expr, PgfExpr)); - -GU_DEFINE_TYPE( - PgfFunDecl, struct, - GU_MEMBER_P(PgfFunDecl, type, PgfType), - GU_MEMBER(PgfFunDecl, arity, int), - GU_MEMBER(PgfFunDecl, defns, PgfEquationsM), - GU_MEMBER(PgfFunDecl, ep, PgfExprProb)); +GU_DEFINE_TYPE(PgfAbsFun, abstract); static prob_t inf_prob = INFINITY; GU_DEFINE_TYPE(prob_t, GuFloating, _); GU_DEFINE_TYPE(PgfMetaChildMap, GuMap, - gu_type(PgfCat), NULL, + gu_type(PgfAbsCat), NULL, gu_type(prob_t), &inf_prob); -GU_DEFINE_TYPE( - PgfCat, struct, - GU_MEMBER(PgfCat, context, PgfHypos)); - - -GU_DEFINE_TYPE( - PgfAbstr, struct, - GU_MEMBER(PgfAbstr, aflags, PgfFlagsP), - GU_MEMBER_V(PgfAbstr, funs, - GU_TYPE_LIT(pointer, PgfCIdMap*, - GU_TYPE_LIT(PgfCIdMap, _, - gu_ptr_type(PgfFunDecl), - &gu_null_struct))), - GU_MEMBER_V(PgfAbstr, cats, - GU_TYPE_LIT(pointer, PgfCIdMap*, - GU_TYPE_LIT(PgfCIdMap, _, - gu_ptr_type(PgfCat), - &gu_null_struct)))); +GU_DEFINE_TYPE(PgfAbsCat, abstract); GU_DEFINE_TYPE( PgfPrintNames, PgfCIdMap, gu_type(GuString), &gu_empty_string); -GU_DEFINE_TYPE( - PgfConcr, struct, - GU_MEMBER(PgfConcr, cflags, PgfFlagsP), - GU_MEMBER_P(PgfConcr, ccats, GuMap), - GU_MEMBER_P(PgfConcr, cncfuns, PgfCncFuns), - GU_MEMBER_P(PgfConcr, sequences, PgfSequences), - GU_MEMBER_P(PgfConcr, printnames, PgfPrintNames), - GU_MEMBER_V(PgfConcr, cnccats, - GU_TYPE_LIT(pointer, PgfCIdMap*, - GU_TYPE_LIT(PgfCIdMap, _, - gu_ptr_type(PgfCncCat), - &gu_null_struct)))); - -GU_DEFINE_TYPE( - PgfPGF, struct, - GU_MEMBER(PgfPGF, major_version, uint16_t), - GU_MEMBER(PgfPGF, minor_version, uint16_t), - GU_MEMBER(PgfPGF, gflags, PgfFlagsP), - GU_MEMBER(PgfPGF, absname, PgfCId), - GU_MEMBER(PgfPGF, abstract, PgfAbstr), - GU_MEMBER_V(PgfPGF, concretes, - GU_TYPE_LIT(pointer, PgfCIdMap*, - GU_TYPE_LIT(PgfCIdMap, _, - gu_ptr_type(PgfConcr), - &gu_null_struct)))); - +GU_DEFINE_TYPE(PgfConcr, abstract); |
