⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 proto.h

📁 本工具提供一个词法分析器和语法分析器的集成开发环境
💻 H
📖 第 1 页 / 共 3 页
字号:
extern char *PRED_AND_LIST;                                         /* MR10 */#ifdef __USE_PROTOSextern void istackreset(void);extern int istacksize(void);extern void pushint(int);extern int popint( void );extern int istackempty( void );extern int topint( void );extern void NewSetWd( void );extern void DumpSetWd( void );extern void DumpSetWdForC( void );extern void DumpSetWdForCC( void );extern void NewSet( void );extern void FillSet( set );extern void ComputeErrorSets( void );extern void ComputeTokSets( void );extern void SubstErrorClass( set * );extern int DefErrSet( set *, int, char * );extern int DefErrSetForC( set *, int, char * );extern int DefErrSetForCC( set *, int, char * );extern int DefErrSet1(int, set *, int, char * );extern int DefErrSetForC1(int, set *, int, char * );extern int DefErrSetForCC1(int, set *, int, char * );extern void GenErrHdr( void );extern void dumpExpr( FILE *, char * );extern void addParm( Node *, char * );extern Graph buildAction( char *, int, int, int );extern Graph buildToken( char * );extern Graph buildWildCard( char * );extern Graph buildRuleRef( char * );extern Graph Or( Graph, Graph );extern Graph Cat( Graph, Graph );extern Graph makeOpt( Graph, int );extern Graph makeBlk( Graph, int );extern Graph makeLoop( Graph, int );extern Graph makePlus( Graph, int );extern Graph emptyAlt( void );extern TokNode * newTokNode( void );extern RuleRefNode * newRNode( void );extern Junction * newJunction( void );extern ActionNode * newActionNode( void );extern char * makelocks( void );extern void preorder( Tree * );extern Tree * tnode( int );extern void _Tfree( Tree * );extern Tree * tdup( Tree * );extern int is_single_tuple( Tree * );extern Tree * tappend( Tree *, Tree * );extern void Tfree( Tree * );extern Tree * tlink( Tree *, Tree *, int );extern Tree * tshrink( Tree * );extern Tree * tflatten( Tree * );extern Tree * tJunc( Junction *, int, set * );extern Tree * tRuleRef( RuleRefNode *, int, set * );extern Tree * tToken( TokNode *, int, set * );extern Tree * tAction( ActionNode *, int, set * );extern int tmember( Tree *, Tree * );extern int tmember_constrained( Tree *, Tree * );extern Tree * tleft_factor( Tree * );extern Tree * trm_perm( Tree *, Tree * );extern void tcvt( set *, Tree * );extern Tree * permute( int, int );extern Tree * VerifyAmbig( Junction *, Junction *, unsigned **, set *, Tree **, Tree **, int * );extern set rJunc( Junction *, int, set * );extern set rRuleRef( RuleRefNode *, int, set * );extern set rToken( TokNode *, int, set * );extern set rAction( ActionNode *, int, set * );extern void HandleAmbiguity( Junction *, Junction *, Junction *, int );extern set First( Junction *, int, int, int * );extern void freeBlkFsets( Junction * );extern void genAction( ActionNode * );extern void genRuleRef( RuleRefNode * );extern void genToken( TokNode * );extern void genOptBlk( Junction * );extern void genLoopBlk( Junction *, Junction *, Junction *, int );extern void genLoopBegin( Junction * );extern void genPlusBlk( Junction * );extern void genSubBlk( Junction * );extern void genRule( Junction * );extern void genJunction( Junction * );extern void genEndBlk( Junction * );extern void genEndRule( Junction * );extern void genHdr( int );extern void genHdr1( int );extern void dumpAction( char *, FILE *, int, int, int, int );extern Entry ** newHashTable( void );extern Entry * hash_add( Entry **, char *, Entry * );extern Entry * hash_get( Entry **, char * );extern void hashStat( Entry ** );extern char * mystrdup( char * );extern void genLexDescr( void );extern void dumpLexClasses( FILE * );extern void genDefFile( void );extern void DumpListOfParmNames( char *, FILE *, int );	/* MR5 janm 26-May-97 */extern int DumpNextNameInDef( char **, FILE * );extern void DumpOldStyleParms( char *, FILE * );extern void DumpType( char *, FILE * );extern int strmember( char *, char * );extern int HasComma( char * );extern void DumpRetValStruct( FILE *, char *, int );extern char * StripQuotes( char * );extern int main( int, char *[] );extern void readDescr( void );extern FILE * NextFile( void );extern char * outnameX( char *, char *);extern char * outname( char * );extern void fatalFL( char *, char *, int );extern void fatal_intern( char *, char *, int );extern void cleanUp( void );extern char * eMsg3( char *, char *, char *, char * );extern char * eMsgd( char *, int );extern char * eMsgd2( char *, int, int );extern void s_fprT( FILE *, set );extern char * TerminalString( int );extern void lexclass( char * );extern void lexmode( int );extern int LexClassIndex( char * );extern int hasAction( char * );extern void setHasAction( char *, char * );extern int addTname( char * );extern int addTexpr( char * );extern int Tnum( char * );extern void Tklink( char *, char * );extern Entry * newEntry( char *, int );extern void list_add( ListNode **, void * );extern void list_free( ListNode **, int freeData );     /* MR10 */extern void list_apply( ListNode *, void (*)(void *) );extern char * Fkey( char *, int, int );extern void FoPush( char *, int );extern void FoPop( int );extern void RegisterCycle( char *, int );extern void ResolveFoCycles( int );extern void pJunc( Junction * );extern void pRuleRef( RuleRefNode * );extern void pToken( TokNode * );extern void pAction( ActionNode * );extern void FoLink( Node * );extern void addFoLink( Node *, char *, Junction * );extern void GenCrossRef( Junction * );extern void defErr( char *, long, long, long, long, long, long );extern void genStdPCCTSIncludeFile(FILE *,char *);                  /* MR10 */extern char * baseName(char *);                                     /* MR10 */extern Predicate *find_predicates(Node *);                          /* MR10 */extern Predicate *MR_find_predicates_and_supp(Node *);              /* MR13 */extern int predicateLookaheadDepth(ActionNode *);                   /* MR10 */extern void predicate_free(Predicate *);                            /* MR10 */extern Predicate * predicate_dup(Predicate *);                      /* MR10 */extern Predicate * predicate_dup_without_context(Predicate *);      /* MR11 */extern void GenRulePrototypes(FILE *, Junction *);extern Junction *first_item_is_guess_block(Junction *);extern Junction *analysis_point(Junction *);extern Tree *make_tree_from_sets(set *, set *);extern Tree *tdup_chain(Tree *);extern Tree *tdif(Tree *, Predicate *, set *, set *);extern set covered_set(Predicate *);extern void AmbiguityDialog(Junction *, int, Junction *, Junction *, int *, int *);extern void dumpAmbigMsg(set *, FILE *, int);extern void GenRuleFuncRedefs(FILE *, Junction *);extern void GenPredefinedSymbolRedefs(FILE *);extern void GenASTSymbolRedefs(FILE *);extern void GenRemapFile(void);extern void GenSetRedefs(FILE *);extern ForcedToken *newForcedToken(char *, int);extern void RemapForcedTokens(void);extern char *TokenOrExpr(int);extern void setUpperRange(TokNode *, char *);extern void GenParser_c_Hdr(void);extern void GenParser_h_Hdr(void);extern void GenRuleMemberDeclarationsForCC(FILE *, Junction *);extern int addForcedTname( char *, int );extern char *OutMetaName(char *);extern void warnNoFL(char *err);extern void warnFL(char *err,char *f,int l);extern void warn(char *err);extern void warnNoCR( char *err );extern void errNoFL(char *err);extern void errFL(char *err,char *f,int l);extern void err(char *err);extern void errNoCR( char *err );extern Tree *tmake(Tree *root, ...);extern void genPredTree( Predicate *p, Node *j, int ,int);extern UserAction *newUserAction(char *);extern char *gate_symbol(char *name);extern char *makeAltID(int blockid, int altnum);extern void DumpRemainingTokSets();extern void DumpANSIFunctionArgDef(FILE *f, Junction *q);extern Predicate *computePredicateFromContextGuard(Graph,int *msgDone);     /* MR10 */extern void recomputeContextGuard(Predicate *);                     /* MR13 */extern Predicate *new_pred(void);extern void chkGTFlag(void);extern void leAdd(LabelEntry *);                                     /* MR7 */extern void leFixup(void);                                           /* MR7 */extern void egAdd(ExceptionGroup *);                                 /* MR7 */extern void egFixup();                                               /* MR7 */extern void altAdd(Junction *);                                      /* MR7 */extern void altFixup();                                              /* MR7 */extern Predicate * MR_find_in_aSubBlk(Junction *alt);                /* MR10 */extern Predicate * MR_predFlatten(Predicate *p);				     /* MR10 */extern Predicate * MR_predSimplifyALL(Predicate *p);	             /* MR10 */extern Predicate * MR_predSimplifyALLX(Predicate *p,int skipPass3);  /* MR10 */extern int MR_allPredLeaves(Predicate *p);                           /* MR10 */extern void MR_cleanup_pred_trees(Predicate *p);                     /* MR10 */extern int MR_predicate_context_completed(Predicate *p);             /* MR10 */extern void MR_check_pred_too_long(Predicate *p,set completion);     /* MR10 */extern Tree * MR_remove_epsilon_from_tree(Tree *t);                  /* MR10 */extern Tree * MR_computeTreeAND(Tree *l,Tree *r);					 /* MR10 */extern int MR_tree_equ(Tree *big, Tree *small);				         /* MR10 */extern set MR_First(int ck,Junction *j,set *incomplete);  		     /* MR10 */extern set MR_compute_pred_set(Predicate *p);                	     /* MR10 */extern Tree * MR_compute_pred_tree_context(Predicate *p);     	     /* MR10 */extern int MR_pointerStackPush(PointerStack *,void *);               /* MR10 */extern void * MR_pointerStackPop(PointerStack *);                    /* MR10 */extern void * MR_pointerStackTop(PointerStack *);                    /* MR10 */extern void MR_pointerStackReset(PointerStack *);                    /* MR10 */extern void MR_backTraceReport();                                    /* MR10 */extern void MR_alphaBetaTraceReport();                               /* MR14 */extern void MR_dumpRuleSet(set);                                     /* MR14 */extern void MR_predContextPresent(Predicate *p,int *,int *);         /* MR10 */extern void MR_dumpPred(Predicate *p,int withContext);               /* MR10 */extern void MR_dumpPred1(int,Predicate *p,int withContext);          /* MR10 */extern void MR_xxxIndent(FILE *f,int depth);                         /* MR11 */extern void MR_outputIndent(int depth);                              /* MR11 */extern void MR_stderrIndent(int depth);                              /* MR11 */extern Junction * MR_ruleReferenced(RuleRefNode *rrn);               /* MR10 */extern Junction * MR_nameToRuleBlk(char *);                          /* MR10 */extern void MR_releaseResourcesUsedInRule(Node *);                   /* MR10 */extern void MR_dumpTreeX(int depth,Tree *t,int across);              /* MR10 */extern void MR_dumpTreeF(FILE *f,int depth,Tree *t,int across);      /* MR10 */extern void DumpFcache();                                            /* MR10 */extern void MR_dumpTokenSet(FILE *f,int depth,set s);                /* MR10 */extern void MR_traceAmbSource(set *,Junction *,Junction *);          /* MR11 */extern void MR_traceAmbSourceK(Tree *,Junction *a1,Junction *a2);    /* MR11 */extern Node *MR_advance(Node *);                                     /* MR11 */extern int  MR_offsetFromRule(Node *);                               /* MR11 */extern char *MR_ruleNamePlusOffset(Node *);                          /* MR11 */extern int  MR_max_height_of_tree(Tree *);                           /* MR11 */extern int  MR_all_leaves_same_height(Tree *,int);                   /* MR11 */extern void MR_projectTreeOntoSet(Tree *t,int k,set *);              /* MR11 */extern Tree *MR_make_tree_from_set(set);                             /* MR11 */extern Predicate *MR_removeRedundantPredPass3(Predicate *);          /* MR11 */extern void MR_pred_depth(Predicate *,int *);                        /* MR11 */extern int  MR_comparePredicates(Predicate *,Predicate *);           /* MR11 */extern Predicate * MR_unfold(Predicate *);                           /* MR11 */extern void MR_simplifyInverted(Predicate *,int);                    /* MR11 */extern int  MR_secondPredicateUnreachable                            /* MR11 */            (Predicate *first,Predicate *second);                    /* MR11 */extern void MR_clearPredEntry(Predicate *);                          /* MR11 */extern void MR_orphanRules(FILE *);                                  /* MR12 */extern void MR_merge_contexts(Tree *);                               /* MR12 */extern int  ci_strequ(char *,char *);                                /* MR12 */extern void MR_guardPred_plainSet(ActionNode *anode,Predicate *);    /* MR12c */extern void MR_suppressSearchReport();                               /* MR12c */extern Predicate * MR_suppressK(Node *,Predicate *);                 /* MR13 */extern void MR_backTraceDumpItem(FILE *,int skip,Node *n);           /* MR13 */extern void MR_backTraceDumpItemReset();                             /* MR13 */extern Junction * MR_junctionWithoutP2(Junction *);                  /* MR13 */#elseextern void istackreset();extern int istacksize();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -