private static PassiveExpression _Quotes(PassiveExpression expression) { Pattern pattern28 = new Pattern(new SymbolVariable("s.Q"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.0"), "\\\\".ToCharArray(), "\\\\".ToCharArray(), new ExpressionVariable("e.2")); if (pattern28.Match(expression)) { return PassiveExpression.Build(_Quotes(PassiveExpression.Build(pattern28.GetVariable("s.Q"), new OpeningBrace(), pattern28.GetVariable("e.1"), pattern28.GetVariable("e.0"), "\\\\".ToCharArray(), "\\\\".ToCharArray(), new ClosingBrace(), pattern28.GetVariable("e.2")))); }; Pattern pattern29 = new Pattern(new SymbolVariable("s.Q"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.0"), "\\\\".ToCharArray(), new SymbolVariable("s.Q"), new ExpressionVariable("e.2")); if (pattern29.Match(expression)) { return PassiveExpression.Build(_Quotes(PassiveExpression.Build(pattern29.GetVariable("s.Q"), new OpeningBrace(), pattern29.GetVariable("e.1"), pattern29.GetVariable("e.0"), "\\\\".ToCharArray(), pattern29.GetVariable("s.Q"), new ClosingBrace(), pattern29.GetVariable("e.2")))); }; Pattern pattern30 = new Pattern(new SymbolVariable("s.Q"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.0"), new SymbolVariable("s.Q"), new ExpressionVariable("e.2")); if (pattern30.Match(expression)) { return PassiveExpression.Build(new OpeningBrace(), pattern30.GetVariable("e.1"), pattern30.GetVariable("e.0"), new ClosingBrace(), pattern30.GetVariable("e.2")); }; Pattern pattern31 = new Pattern(new SymbolVariable("s.Q"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2")); if (pattern31.Match(expression)) { return PassiveExpression.Build(new OpeningBrace(), new ClosingBrace(), pattern31.GetVariable("e.1"), pattern31.GetVariable("e.2")); }; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Order(PassiveExpression expression) { Pattern pattern2 = new Pattern(new SymbolVariable("s.1"), new SymbolVariable("s.2")); if (pattern2.Match(expression)) { expression = PassiveExpression.Build(_PreAlph(PassiveExpression.Build(pattern2.GetVariable("s.1"), pattern2.GetVariable("s.2")))); { Pattern pattern3 = new Pattern(true); pattern3.CopyBoundVariables(pattern2); if (pattern3.Match(expression)) { return(PassiveExpression.Build(pattern3.GetVariable("s.1"), pattern3.GetVariable("s.2"))); } ; Pattern pattern4 = new Pattern(false); pattern4.CopyBoundVariables(pattern2); if (pattern4.Match(expression)) { return(PassiveExpression.Build(pattern4.GetVariable("s.2"), pattern4.GetVariable("s.1"))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); } } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
// extract arguments specified as <Function t.1 e.2> void GetArguments(PassiveExpression expression, out object arg1, out object arg2) { var p = new Pattern(new TermVariable("t.1"), new ExpressionVariable("e.2")); if (p.Match(expression)) { arg1 = p.GetVariable("t.1"); arg2 = p.GetVariable("e.2"); return; } // can't find match throw new RecognitionImpossibleException(); }
private static PassiveExpression _Prout__lm(PassiveExpression expression) { Pattern pattern45 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), "*".ToCharArray(), new ClosingBrace(), new ExpressionVariable("e.2")); if (RefalBase.Match(expression, pattern45)) { return(PassiveExpression.Build(_Prout__lm(PassiveExpression.Build(pattern45.GetVariable("e.1"))), _Prout(PassiveExpression.Build("*** *(".ToCharArray(), pattern45.GetVariable("e.2"))))); } ; Pattern pattern46 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2")); if (RefalBase.Match(expression, pattern46)) { return(PassiveExpression.Build(_Prout__lm(PassiveExpression.Build(pattern46.GetVariable("e.1"))), _Prout(PassiveExpression.Build("*** (".ToCharArray(), pattern46.GetVariable("e.2"))))); } ; Pattern pattern47 = new Pattern("$".ToCharArray(), new ExpressionVariable("e.1")); if (RefalBase.Match(expression, pattern47)) { return(PassiveExpression.Build(_Prout(PassiveExpression.Build("*** ".ToCharArray(), pattern47.GetVariable("e.1"))))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0)); }
private static PassiveExpression _Transla(PassiveExpression expression) { Pattern pattern48 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.ML"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "(".ToCharArray(), new ExpressionVariable("e.2"), new ClosingBrace()); if (pattern48.Match(expression)) { return(PassiveExpression.Build(_Transla(PassiveExpression.Build(new OpeningBrace(), pattern48.GetVariable("e.ML"), new OpeningBrace(), pattern48.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern48.GetVariable("e.2"), new ClosingBrace())))); } ; Pattern pattern49 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.ML"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.2"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), ")".ToCharArray(), new ExpressionVariable("e.3"), new ClosingBrace()); if (pattern49.Match(expression)) { return(PassiveExpression.Build(_Transla(PassiveExpression.Build(new OpeningBrace(), pattern49.GetVariable("e.ML"), new OpeningBrace(), pattern49.GetVariable("e.1"), "(".ToCharArray(), pattern49.GetVariable("e.2"), ")".ToCharArray(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern49.GetVariable("e.3"), new ClosingBrace())))); } ; Pattern pattern50 = new Pattern(new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), ")".ToCharArray(), new ExpressionVariable("e.2"), new ClosingBrace()); if (pattern50.Match(expression)) { return(PassiveExpression.Build(_Transla(PassiveExpression.Build(new OpeningBrace(), new OpeningBrace(), pattern50.GetVariable("e.1"), ")(".ToCharArray(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern50.GetVariable("e.2"), new ClosingBrace())))); } ; Pattern pattern51 = new Pattern(new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), ".]".ToCharArray(), new ClosingBrace()); if (pattern51.Match(expression)) { return(PassiveExpression.Build(pattern51.GetVariable("e.1"), ")".ToCharArray())); } ; Pattern pattern52 = new Pattern(new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "]".ToCharArray(), new ClosingBrace()); if (pattern52.Match(expression)) { return(PassiveExpression.Build(pattern52.GetVariable("e.1"), ")e.MR".ToCharArray())); } ; Pattern pattern53 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.ML"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "]".ToCharArray(), new ClosingBrace()); if (pattern53.Match(expression)) { return(PassiveExpression.Build(_Ermes(PassiveExpression.Build("ERROR: Unbalanced left parenth. after pointer".ToCharArray())))); } ; Pattern pattern54 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.ML"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), new TermVariable("t.A"), new ExpressionVariable("e.2"), new ClosingBrace()); if (pattern54.Match(expression)) { return(PassiveExpression.Build(_Transla(PassiveExpression.Build(new OpeningBrace(), pattern54.GetVariable("e.ML"), new OpeningBrace(), pattern54.GetVariable("e.1"), pattern54.GetVariable("t.A"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern54.GetVariable("e.2"), new ClosingBrace())))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Number(PassiveExpression expression) { Pattern pattern102 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.N"), new ClosingBrace(), new SymbolVariable("s.X"), new ExpressionVariable("e.2")); if (RefalBase.Match(expression, pattern102)) { expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern102.GetVariable("s.X")))); Pattern pattern103 = new Pattern("D".ToCharArray(), new ExpressionVariable("e.X1")); pattern103.CopyBoundVariables(pattern102); if (RefalBase.Match(expression, pattern103)) { return(PassiveExpression.Build(_Number(PassiveExpression.Build(new OpeningBrace(), pattern103.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern103.GetVariable("e.N"), pattern103.GetVariable("s.X"), new ClosingBrace(), pattern103.GetVariable("e.2"))))); } } ; Pattern pattern104 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.N"), new ClosingBrace(), new ExpressionVariable("e.X")); if (RefalBase.Match(expression, pattern104)) { return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern104.GetVariable("e.1"), _Numb(PassiveExpression.Build(pattern104.GetVariable("e.N"))), new ClosingBrace(), pattern104.GetVariable("e.X"))))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0)); }
private static PassiveExpression _Read__in(PassiveExpression expression) { Pattern pattern8 = new Pattern(); if (RefalBase.Match(expression, pattern8)) { return(PassiveExpression.Build()); } ; Pattern pattern9 = new Pattern(0); if (RefalBase.Match(expression, pattern9)) { return(PassiveExpression.Build()); } ; Pattern pattern10 = new Pattern(new ExpressionVariable("e.1")); if (RefalBase.Match(expression, pattern10)) { return(PassiveExpression.Build(" ".ToCharArray(), pattern10.GetVariable("e.1"), _Read__in(PassiveExpression.Build(_Card(PassiveExpression.Build()))))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0)); }
private static PassiveExpression _Output(PassiveExpression expression) { Pattern pattern2 = new Pattern(new OpeningBrace(), new ClosingBrace(), new OpeningBrace(), new SymbolVariable("s.D"), new ClosingBrace()); if (pattern2.Match(expression)) { return(PassiveExpression.Build(_Output(PassiveExpression.Build(new OpeningBrace(), _Get(PassiveExpression.Build(pattern2.GetVariable("s.D"))), new ClosingBrace(), new OpeningBrace(), pattern2.GetVariable("s.D"), new ClosingBrace())))); } ; Pattern pattern3 = new Pattern(new OpeningBrace(), 0, new ClosingBrace(), new OpeningBrace(), new SymbolVariable("s.D"), new ClosingBrace()); if (pattern3.Match(expression)) { return(PassiveExpression.Build()); } ; Pattern pattern4 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new SymbolVariable("s.D"), new ClosingBrace()); if (pattern4.Match(expression)) { return(PassiveExpression.Build(_Prout(PassiveExpression.Build(pattern4.GetVariable("e.1"))), _Output(PassiveExpression.Build(new OpeningBrace(), _Get(PassiveExpression.Build(pattern4.GetVariable("s.D"))), new ClosingBrace(), new OpeningBrace(), pattern4.GetVariable("s.D"), new ClosingBrace())))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression Chpm(PassiveExpression expression) { Pattern pattern2 = new Pattern("+".ToCharArray(), new ExpressionVariable("e.1")); if (RefalBase.Match(expression, pattern2)) { return(PassiveExpression.Build("-".ToCharArray(), Chpm(PassiveExpression.Build(pattern2.GetVariable("e.1"))))); } ; Pattern pattern3 = new Pattern(new SymbolVariable("s.1"), new ExpressionVariable("e.2")); if (RefalBase.Match(expression, pattern3)) { return(PassiveExpression.Build(pattern3.GetVariable("s.1"), Chpm(PassiveExpression.Build(pattern3.GetVariable("e.2"))))); } ; Pattern pattern4 = new Pattern(); if (RefalBase.Match(expression, pattern4)) { return(PassiveExpression.Build()); } ; throw new RecognitionImpossibleException("Recognition impossible"); }
private static PassiveExpression _RAdd(PassiveExpression expression) { Pattern pattern2 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), "0".ToCharArray(), new ClosingBrace()); if (pattern2.Match(expression)) { return(PassiveExpression.Build(pattern2.GetVariable("e.1"))); } ; Pattern pattern3 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.2"), "\'".ToCharArray(), new ClosingBrace()); if (pattern3.Match(expression)) { return(PassiveExpression.Build(_RAdd(PassiveExpression.Build(new OpeningBrace(), pattern3.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern3.GetVariable("e.2"), new ClosingBrace())), "\'".ToCharArray())); } ; Pattern pattern4 = new Pattern(new ExpressionVariable("e.1")); if (pattern4.Match(expression)) { return(PassiveExpression.Build()); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Output(PassiveExpression expression) { Pattern pattern2 = new Pattern(); if (pattern2.Match(expression)) { return(PassiveExpression.Build(_Output(PassiveExpression.Build(_Card(PassiveExpression.Build()))))); } ; Pattern pattern3 = new Pattern(0); if (pattern3.Match(expression)) { return(PassiveExpression.Build()); } ; Pattern pattern4 = new Pattern(new ExpressionVariable("e.1")); if (pattern4.Match(expression)) { return(PassiveExpression.Build(_Prout(PassiveExpression.Build(pattern4.GetVariable("e.1"))), _Output(PassiveExpression.Build(_Card(PassiveExpression.Build()))))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression RAdd(PassiveExpression expression) { Pattern pattern2 = new Pattern(new Pattern(new ExpressionVariable("e.1")), new Pattern("0".ToCharArray())); if (RefalBase.Match(expression, pattern2)) { return(PassiveExpression.Build(pattern2.GetVariable("e.1"))); } ; Pattern pattern3 = new Pattern(new Pattern(new ExpressionVariable("e.1")), new Pattern(new ExpressionVariable("e.2"), "\'".ToCharArray())); if (RefalBase.Match(expression, pattern3)) { return(PassiveExpression.Build(RAdd(PassiveExpression.Build(PassiveExpression.CreateSubexpression(pattern3.GetVariable("e.1")), PassiveExpression.CreateSubexpression(pattern3.GetVariable("e.2")))), "\'".ToCharArray())); } ; Pattern pattern4 = new Pattern(new ExpressionVariable("e.1")); if (RefalBase.Match(expression, pattern4)) { return(PassiveExpression.Build()); } ; throw new RecognitionImpossibleException("Recognition impossible"); }
private static PassiveExpression _Chpm(PassiveExpression expression) { Pattern pattern2 = new Pattern("+".ToCharArray(), new ExpressionVariable("e.1")); if (pattern2.Match(expression)) { return(PassiveExpression.Build("-".ToCharArray(), _Chpm(PassiveExpression.Build(pattern2.GetVariable("e.1"))))); } ; Pattern pattern3 = new Pattern(new SymbolVariable("s.1"), new ExpressionVariable("e.2")); if (pattern3.Match(expression)) { return(PassiveExpression.Build(pattern3.GetVariable("s.1"), _Chpm(PassiveExpression.Build(pattern3.GetVariable("e.2"))))); } ; Pattern pattern4 = new Pattern(); if (pattern4.Match(expression)) { return(PassiveExpression.Build()); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Next(PassiveExpression expression) { Pattern pattern2 = new Pattern(); if (pattern2.Match(expression)) { expression = PassiveExpression.Build(_Get(PassiveExpression.Build(1))); { Pattern pattern3 = new Pattern("*".ToCharArray(), new ExpressionVariable("e.1")); pattern3.CopyBoundVariables(pattern2); if (pattern3.Match(expression)) { return(PassiveExpression.Build(_Putz(PassiveExpression.Build(2, "*".ToCharArray(), pattern3.GetVariable("e.1"))), _Next(PassiveExpression.Build()))); } ; Pattern pattern4 = new Pattern(new ExpressionVariable("e.1")); pattern4.CopyBoundVariables(pattern2); if (pattern4.Match(expression)) { return(PassiveExpression.Build(pattern4.GetVariable("e.1"))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); } } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Outform(PassiveExpression expression) { Pattern pattern68 = new Pattern(new SymbolVariable("s.S")); if (pattern68.Match(expression)) { expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern68.GetVariable("s.S")))); { Pattern pattern69 = new Pattern("Wi".ToCharArray(), new ExpressionVariable("e.S1")); pattern69.CopyBoundVariables(pattern68); if (pattern69.Match(expression)) { return PassiveExpression.Build(_Explode(PassiveExpression.Build(pattern69.GetVariable("s.S")))); }; Pattern pattern70 = new Pattern("N".ToCharArray(), new ExpressionVariable("e.S1")); pattern70.CopyBoundVariables(pattern68); if (pattern70.Match(expression)) { return PassiveExpression.Build(_Symb(PassiveExpression.Build(pattern70.GetVariable("s.S")))); }; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); } }; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Checkf(PassiveExpression expression) { Pattern pattern38 = new Pattern("+".ToCharArray()); if (RefalBase.Match(expression, pattern38)) { return(PassiveExpression.Build("Add")); } ; Pattern pattern39 = new Pattern("-".ToCharArray()); if (RefalBase.Match(expression, pattern39)) { return(PassiveExpression.Build("Sub")); } ; Pattern pattern40 = new Pattern("*".ToCharArray()); if (RefalBase.Match(expression, pattern40)) { return(PassiveExpression.Build("Mul")); } ; Pattern pattern41 = new Pattern("/".ToCharArray()); if (RefalBase.Match(expression, pattern41)) { return(PassiveExpression.Build("Div")); } ; Pattern pattern42 = new Pattern(new SymbolVariable("s.F")); if (RefalBase.Match(expression, pattern42)) { expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern42.GetVariable("s.F")))); Pattern pattern43 = new Pattern("Wi".ToCharArray(), new ExpressionVariable("e.F1")); pattern43.CopyBoundVariables(pattern42); if (RefalBase.Match(expression, pattern43)) { return(PassiveExpression.Build(pattern43.GetVariable("s.F"))); } } ; Pattern pattern44 = new Pattern(new SymbolVariable("s.F")); if (RefalBase.Match(expression, pattern44)) { return(PassiveExpression.Build()); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0)); }
public static PassiveExpression _Br(PassiveExpression expression) { // <Br e.N '=' e.Expr>, where e.N is expression which does not // include '=' on the upper level of the bracket's structure Pattern pattern = new Pattern(new ExpressionVariable("Key"), '=', new ExpressionVariable("Value")); if (pattern.Match(expression)) { PassiveExpression key = (PassiveExpression)pattern.GetVariable("Key"); PassiveExpression value = (PassiveExpression)pattern.GetVariable("Value"); string strKey = key.ToString(); buriedKeys[strKey] = key; buriedValues[strKey] = value; } throw new RecognitionImpossibleException("<Br e.N '=' e.Expr>: unexpected arguments"); }
private static PassiveExpression _Elpar(PassiveExpression expression) { Pattern pattern38 = new Pattern(new ExpressionVariable("e.1"), new OpeningBrace(), new ExpressionVariable("e.2"), new ClosingBrace(), new ExpressionVariable("e.3")); if (pattern38.Match(expression)) { return(PassiveExpression.Build(pattern38.GetVariable("e.1"), pattern38.GetVariable("e.2"), _Elpar(PassiveExpression.Build(pattern38.GetVariable("e.3"))))); } ; Pattern pattern39 = new Pattern(new ExpressionVariable("e.1")); if (pattern39.Match(expression)) { return(PassiveExpression.Build(pattern39.GetVariable("e.1"))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Order1(PassiveExpression expression) { Pattern pattern3 = new Pattern(true, new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2")); if (pattern3.Match(expression)) { return(PassiveExpression.Build(pattern3.GetVariable("e.1"), pattern3.GetVariable("e.2"))); } ; Pattern pattern4 = new Pattern(false, new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2")); if (pattern4.Match(expression)) { return(PassiveExpression.Build(pattern4.GetVariable("e.2"), pattern4.GetVariable("e.1"))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _AddB(PassiveExpression expression) { Pattern pattern2 = new Pattern(new OpeningBrace(), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace()); if (pattern2.Match(expression)) { return(PassiveExpression.Build(pattern2.GetVariable("e.1"))); } ; Pattern pattern3 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ClosingBrace()); if (pattern3.Match(expression)) { return(PassiveExpression.Build(pattern3.GetVariable("e.1"))); } ; Pattern pattern4 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), "0".ToCharArray(), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.2"), new SymbolVariable("s.3"), new ClosingBrace()); if (pattern4.Match(expression)) { return(PassiveExpression.Build(_AddB(PassiveExpression.Build(new OpeningBrace(), pattern4.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern4.GetVariable("e.2"), new ClosingBrace())), pattern4.GetVariable("s.3"))); } ; Pattern pattern5 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new SymbolVariable("s.3"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.2"), "0".ToCharArray(), new ClosingBrace()); if (pattern5.Match(expression)) { return(PassiveExpression.Build(_AddB(PassiveExpression.Build(new OpeningBrace(), pattern5.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern5.GetVariable("e.2"), new ClosingBrace())), pattern5.GetVariable("s.3"))); } ; Pattern pattern6 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), "1".ToCharArray(), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.2"), "1".ToCharArray(), new ClosingBrace()); if (pattern6.Match(expression)) { return(PassiveExpression.Build(_AddB(PassiveExpression.Build(new OpeningBrace(), "1".ToCharArray(), new ClosingBrace(), new OpeningBrace(), _AddB(PassiveExpression.Build(new OpeningBrace(), pattern6.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern6.GetVariable("e.2"), new ClosingBrace())), new ClosingBrace())), "0".ToCharArray())); } ; Pattern pattern7 = new Pattern(new ExpressionVariable("e.1")); if (pattern7.Match(expression)) { return(PassiveExpression.Build("** error! **".ToCharArray())); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Last1(PassiveExpression expression) { Pattern pattern45 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.A"), new SymbolVariable("s.X"), new ExpressionVariable("e.B"), new ClosingBrace(), new ExpressionVariable("e.1"), new SymbolVariable("s.X"), new OpeningBrace(), new ExpressionVariable("e.2"), new ClosingBrace()); if (pattern45.Match(expression)) { return PassiveExpression.Build(pattern45.GetVariable("e.1"), pattern45.GetVariable("s.X"), new OpeningBrace(), pattern45.GetVariable("e.2"), new ClosingBrace()); }; Pattern pattern46 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.A"), new ClosingBrace(), new ExpressionVariable("e.1"), new TermVariable("t.X"), new OpeningBrace(), new ExpressionVariable("e.2"), new ClosingBrace()); if (pattern46.Match(expression)) { return PassiveExpression.Build(_Last1(PassiveExpression.Build(new OpeningBrace(), pattern46.GetVariable("e.A"), new ClosingBrace(), pattern46.GetVariable("e.1"), new OpeningBrace(), pattern46.GetVariable("t.X"), pattern46.GetVariable("e.2"), new ClosingBrace()))); }; Pattern pattern47 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.A"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.2"), new ClosingBrace()); if (pattern47.Match(expression)) { return PassiveExpression.Build(new OpeningBrace(), pattern47.GetVariable("e.2"), new ClosingBrace()); }; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Pr__lmb(PassiveExpression expression) { Pattern pattern41 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2")); if (pattern41.Match(expression)) { return PassiveExpression.Build(_Pr__lmb(PassiveExpression.Build(pattern41.GetVariable("e.1"))), _Prout(PassiveExpression.Build("(".ToCharArray(), pattern41.GetVariable("e.2")))); }; Pattern pattern42 = new Pattern("$".ToCharArray(), new ExpressionVariable("e.1")); if (pattern42.Match(expression)) { return PassiveExpression.Build(); }; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression PreAlph(PassiveExpression expression) { Pattern pattern2 = new Pattern(new SymbolVariable("s.1"), new SymbolVariable("s.1")); if (RefalBase.Match(expression, pattern2)) { return(PassiveExpression.Build(true)); } ; Pattern pattern3 = new Pattern(new SymbolVariable("s.1"), new SymbolVariable("s.2")); if (RefalBase.Match(expression, pattern3)) { return(PassiveExpression.Build(Before(PassiveExpression.Build(pattern3.GetVariable("s.1"), pattern3.GetVariable("s.2"), "In", Alphabet(PassiveExpression.Build()))))); } ; throw new RecognitionImpossibleException("Recognition impossible"); }
public void CopyBoundVariables(Pattern pattern) { foreach (string name in pattern.Variables.Keys) { if (Variables.ContainsKey(name)) { Variable var = Variables[name]; var.Value = pattern.GetVariable(name); // first occurance of the variable is in another pattern var.FirstOccurance = -1; } else { // copy bound variable from another pattern Variable var = pattern.Variables[name]; Variables[name] = var; var.FirstOccurance = -1; } } }
private static PassiveExpression _Trlmb(PassiveExpression expression) { Pattern pattern55 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.2"), new ClosingBrace(), new ExpressionVariable("e.L")); if (pattern55.Match(expression)) { return(PassiveExpression.Build(pattern55.GetVariable("e.1"), ")(".ToCharArray(), _Trlmb(PassiveExpression.Build(new OpeningBrace(), pattern55.GetVariable("e.2"), new ClosingBrace(), pattern55.GetVariable("e.L"))))); } ; Pattern pattern56 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace()); if (pattern56.Match(expression)) { return(PassiveExpression.Build(pattern56.GetVariable("e.1"))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Lookm0(PassiveExpression expression) { Pattern pattern11 = new Pattern(new ExpressionVariable("e.1"), "[".ToCharArray(), new ExpressionVariable("e.2")); if (pattern11.Match(expression)) { return(PassiveExpression.Build(_Lookm(PassiveExpression.Build(new OpeningBrace(), new ClosingBrace(), pattern11.GetVariable("e.1"), "[".ToCharArray(), pattern11.GetVariable("e.2"))))); } ; Pattern pattern12 = new Pattern(new ExpressionVariable("e.1")); if (pattern12.Match(expression)) { return(PassiveExpression.Build(pattern12.GetVariable("e.1"))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _PreAlph(PassiveExpression expression) { Pattern pattern2 = new Pattern(new SymbolVariable("s.1"), new SymbolVariable("s.1")); if (pattern2.Match(expression)) { return(PassiveExpression.Build(true)); } ; Pattern pattern3 = new Pattern(new SymbolVariable("s.1"), new SymbolVariable("s.2")); if (pattern3.Match(expression)) { return(PassiveExpression.Build(_Before(PassiveExpression.Build(pattern3.GetVariable("s.1"), pattern3.GetVariable("s.2"), "In", _Alphabet(PassiveExpression.Build()))))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression Trans(PassiveExpression expression) { Pattern pattern9 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.It"), new ClosingBrace(), new ExpressionVariable("e.1"), new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.It"), new ClosingBrace(), new ExpressionVariable("e.Eng"), new ClosingBrace(), new ExpressionVariable("e.2")); if (RefalBase.Match(expression, pattern9)) { return(PassiveExpression.Build(pattern9.GetVariable("e.Eng"))); } ; Pattern pattern10 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.It"), new ClosingBrace(), new ExpressionVariable("e.1")); if (RefalBase.Match(expression, pattern10)) { return(PassiveExpression.Build("***".ToCharArray())); } ; throw new RecognitionImpossibleException("Recognition impossible"); }
private static PassiveExpression _Id__tail(PassiveExpression expression) { Pattern pattern32 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new SymbolVariable("s.A"), new ExpressionVariable("e.2")); if (pattern32.Match(expression)) { expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern32.GetVariable("s.A")))); { Pattern pattern33 = new Pattern("L".ToCharArray(), new ExpressionVariable("e.3")); pattern33.CopyBoundVariables(pattern32); if (pattern33.Match(expression)) { return PassiveExpression.Build(_Id__tail(PassiveExpression.Build(new OpeningBrace(), pattern33.GetVariable("e.1"), pattern33.GetVariable("s.A"), new ClosingBrace(), pattern33.GetVariable("e.2")))); }; Pattern pattern34 = new Pattern("D".ToCharArray(), new ExpressionVariable("e.3")); pattern34.CopyBoundVariables(pattern32); if (pattern34.Match(expression)) { return PassiveExpression.Build(_Id__tail(PassiveExpression.Build(new OpeningBrace(), pattern34.GetVariable("e.1"), pattern34.GetVariable("s.A"), new ClosingBrace(), pattern34.GetVariable("e.2")))); }; Pattern pattern35 = new Pattern(new SymbolVariable("s.T"), new ExpressionVariable("e.3")); pattern35.CopyBoundVariables(pattern32); if (pattern35.Match(expression)) { return PassiveExpression.Build(new OpeningBrace(), pattern35.GetVariable("e.1"), new ClosingBrace(), pattern35.GetVariable("s.A"), pattern35.GetVariable("e.2")); }; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); } }; Pattern pattern37 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace()); if (pattern37.Match(expression)) { return PassiveExpression.Build(new OpeningBrace(), pattern37.GetVariable("e.1"), new ClosingBrace()); }; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
private static PassiveExpression _Mbprep(PassiveExpression expression) { Pattern pattern6 = new Pattern(0); if (pattern6.Match(expression)) { return(PassiveExpression.Build()); } ; Pattern pattern7 = new Pattern(new ExpressionVariable("e.1")); if (pattern7.Match(expression)) { expression = PassiveExpression.Build(_Lookm0(PassiveExpression.Build(pattern7.GetVariable("e.1")))); { Pattern pattern8 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.A"), new ClosingBrace(), "[".ToCharArray(), new ExpressionVariable("e.B")); pattern8.CopyBoundVariables(pattern7); if (pattern8.Match(expression)) { return(PassiveExpression.Build(_Out(PassiveExpression.Build(pattern8.GetVariable("e.A"), _Lookp(PassiveExpression.Build(new OpeningBrace(), new OpeningBrace(), "[".ToCharArray(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern8.GetVariable("e.B"), new ClosingBrace())))))); } ; Pattern pattern9 = new Pattern(new ExpressionVariable("e.1")); pattern9.CopyBoundVariables(pattern7); if (pattern9.Match(expression)) { return(PassiveExpression.Build(_Putz(PassiveExpression.Build(2, pattern9.GetVariable("e.1"))), _Mbprep(PassiveExpression.Build(_Next(PassiveExpression.Build()))))); } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); } } ; throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString()); }
public PassiveExpression Br(PassiveExpression expression) { // <Br e.N '=' e.Expr>, where e.N is expression which does not // include '=' on the upper level of the bracket's structure Pattern pattern = new Pattern(new ExpressionVariable("Key"), '=', new ExpressionVariable("Value")); if (pattern.Match(expression)) { var key = (PassiveExpression)pattern.GetVariable("Key"); var value = (PassiveExpression)pattern.GetVariable("Value"); var strKey = key.ToString(); BuriedKeys[strKey] = key; BuriedValues[strKey] = value; return PassiveExpression.Build(); } throw new RecognitionImpossibleException("<Br e.N '=' e.Expr>: unexpected arguments"); }