示例#1
0
 internal bool AddLexCategory( string name, string verb, LexSpan spn ) {
     if (lexCategories.ContainsKey( name ))
         return false;
     else {
         LexCategory cls = new LexCategory( name, verb, spn );
         lexCategories.Add( name, cls );
         cls.ParseRE( this );
         return true;
     }
 }
示例#2
0
 internal static RuleDesc MkDummyRuleDesc( LexCategory cat, AAST aast ) {
     RuleDesc result = new RuleDesc();
     result.pSpan = null;
     result.aSpan = aast.AtStart;
     result.isBarAction = false;
     result.isPredDummyRule = true;
     result.pattern = String.Format( CultureInfo.InvariantCulture, "{{{0}}}", cat.Name );
     result.list = new List<StartState>();
     result.ParseRE( aast );
     result.list.Add( aast.StartStateValue( cat.PredDummyName ) );
     return result;
 }