public bool Number() /*Number * { //semantic rule related block using C# as host language * string sNumber; * bool store_(){double.TryParse(sNumber,out result);return true;} * } * : ([0-9]+ ('.' [0-9]+)?):sNumber store_ ;*/ { var _sem = new _Number(this); var result = And(() => Into(() => And(() => PlusRepeat(() => In('0', '9')) && Option(() => And(() => Char('.') && PlusRepeat(() => In('0', '9'))))), out _sem.sNumber) && _sem.store_()); return(result); }
public bool Number() /*Number * { //semantic rule related block using C# as host language (block can be implemented as nested struct) * internal _Number(calc0_direct parent){parent_=parent;} * calc0_direct parent_; * internal string sNumber; * internal bool store_(){double.TryParse(sNumber,out parent_.top.result);return true;} * } * : ([0-9]+ ('.' [0-9]+)?):sNumber store_ ;*/ { var _sem = new _Number(this); return(And(() => Into(() => And(() => PlusRepeat(() => In('0', '9')) && Option(() => And(() => Char('.') && PlusRepeat(() => In('0', '9'))))), out _sem.sNumber) && _sem.store_())); }
public bool Number() /*Number { //semantic rule related block using C# as host language (block can be implemented as nested struct) internal _Number(calc0_direct parent){parent_=parent;} calc0_direct parent_; internal string sNumber; internal bool store_(){double.TryParse(sNumber,out parent_.top.result);return true;} } : ([0-9]+ ('.' [0-9]+)?):sNumber store_ ;*/ { var _sem= new _Number(this); return And(()=> Into(()=> And(()=> PlusRepeat(()=> In('0','9') ) && Option(()=> And(()=> Char('.') && PlusRepeat(()=> In('0','9') ) ) ) ),out _sem.sNumber) && _sem.store_() ); }
/*Number { //semantic rule related block using C# as host language string sNumber; bool store_(){double.TryParse(sNumber,out result);return true;} } : ([0-9]+ ('.' [0-9]+)?):sNumber store_ ;*/ public bool Number() { var _sem= new _Number(this); return And(()=> Into(()=> And(()=> PlusRepeat(()=> In('0','9') ) && Option(()=> And(()=> Char('.') && PlusRepeat(()=> In('0','9') ) ) ) ),out _sem.sNumber) && _sem.store_() ); }
public bool Number() /*Number { //semantic rule related block using C# as host language string sNumber; bool store_(){double.TryParse(sNumber,out result);return true;} } : ([0-9]+ ('.' [0-9]+)?):sNumber store_ ;*/ { var _sem= new _Number(this); return And(()=> Into(()=> And(()=> PlusRepeat(()=> In('0','9') ) && Option(()=> And(()=> Char('.') && PlusRepeat(()=> In('0','9') ) ) ) ),out _sem.sNumber) && _sem.store_() ); }