Beispiel #1
0
        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());
        }
Beispiel #2
0
        private static PassiveExpression _PreAlph(PassiveExpression expression)
        {
            Pattern pattern5 = new Pattern(new SymbolVariable("s.1"), new SymbolVariable("s.1"));

            if (pattern5.Match(expression))
            {
                return(PassiveExpression.Build(true));
            }
            ;

            Pattern pattern6 = new Pattern(new SymbolVariable("s.1"), new SymbolVariable("s.2"));

            if (pattern6.Match(expression))
            {
                expression = PassiveExpression.Build(_Alphabet(PassiveExpression.Build()));
                Pattern pattern7 = new Pattern(new ExpressionVariable("e.A"), new SymbolVariable("s.1"), new ExpressionVariable("e.B"), new SymbolVariable("s.2"), new ExpressionVariable("e.C"));
                pattern7.CopyBoundVariables(pattern6);
                if (pattern7.Match(expression))
                {
                    return(PassiveExpression.Build(true));
                }
            }
            ;

            Pattern pattern8 = new Pattern(new ExpressionVariable("e.Z"));

            if (pattern8.Match(expression))
            {
                return(PassiveExpression.Build(false));
            }
            ;

            throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString());
        }
Beispiel #3
0
        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));
        }
Beispiel #4
0
        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());
        }
Beispiel #5
0
		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());
		}
Beispiel #6
0
        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));
        }
Beispiel #7
0
		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());
		}
Beispiel #8
0
        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());
        }
Beispiel #9
0
		private static PassiveExpression _D__string(PassiveExpression expression)
		{
			Pattern pattern38 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new SymbolVariable("s.A"), new ExpressionVariable("e.2"));
			if (pattern38.Match(expression))
			{
				expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern38.GetVariable("s.A"))));
				Pattern pattern39 = new Pattern("D".ToCharArray(), new ExpressionVariable("e.A1"));
				pattern39.CopyBoundVariables(pattern38);
				if (pattern39.Match(expression))
				{
					return PassiveExpression.Build(_D__string(PassiveExpression.Build(new OpeningBrace(), pattern39.GetVariable("e.1"), pattern39.GetVariable("s.A"), new ClosingBrace(), pattern39.GetVariable("e.2"))));
				}
			};

			Pattern pattern40 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2"));
			if (pattern40.Match(expression))
			{
				return PassiveExpression.Build(new OpeningBrace(), pattern40.GetVariable("e.1"), new ClosingBrace(), pattern40.GetVariable("e.2"));
			};

			throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString());
		}
Beispiel #10
0
        private static PassiveExpression _Word(PassiveExpression expression)
        {
            Pattern pattern94 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.W"), new ClosingBrace(), new SymbolVariable("s.B"), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern94))
            {
                expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern94.GetVariable("s.B"))));
                {
                    Pattern pattern95 = new Pattern("L".ToCharArray(), new ExpressionVariable("e.B1"));
                    pattern95.CopyBoundVariables(pattern94);
                    if (RefalBase.Match(expression, pattern95))
                    {
                        return(PassiveExpression.Build(_Word(PassiveExpression.Build(new OpeningBrace(), pattern95.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern95.GetVariable("e.W"), pattern95.GetVariable("s.B"), new ClosingBrace(), pattern95.GetVariable("e.2")))));
                    }
                    ;

                    Pattern pattern96 = new Pattern("D".ToCharArray(), new ExpressionVariable("e.B1"));
                    pattern96.CopyBoundVariables(pattern94);
                    if (RefalBase.Match(expression, pattern96))
                    {
                        return(PassiveExpression.Build(_Word(PassiveExpression.Build(new OpeningBrace(), pattern96.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern96.GetVariable("e.W"), pattern96.GetVariable("s.B"), new ClosingBrace(), pattern96.GetVariable("e.2")))));
                    }
                    ;

                    Pattern pattern97 = new Pattern("Ol-".ToCharArray());
                    pattern97.CopyBoundVariables(pattern94);
                    if (RefalBase.Match(expression, pattern97))
                    {
                        return(PassiveExpression.Build(_Word(PassiveExpression.Build(new OpeningBrace(), pattern97.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern97.GetVariable("e.W"), "-".ToCharArray(), new ClosingBrace(), pattern97.GetVariable("e.2")))));
                    }
                    ;

                    Pattern pattern98 = new Pattern("Ou_".ToCharArray());
                    pattern98.CopyBoundVariables(pattern94);
                    if (RefalBase.Match(expression, pattern98))
                    {
                        return(PassiveExpression.Build(_Word(PassiveExpression.Build(new OpeningBrace(), pattern98.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), pattern98.GetVariable("e.W"), "_".ToCharArray(), new ClosingBrace(), pattern98.GetVariable("e.2")))));
                    }
                    ;

                    Pattern pattern99 = new Pattern(new SymbolVariable("s.T"), new ExpressionVariable("e.B1"));
                    pattern99.CopyBoundVariables(pattern94);
                    if (RefalBase.Match(expression, pattern99))
                    {
                        return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern99.GetVariable("e.1"), _Implode_Ext(PassiveExpression.Build(pattern99.GetVariable("e.W"))), new ClosingBrace(), pattern99.GetVariable("s.B"), pattern99.GetVariable("e.2")))));
                    }
                    ;

                    throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0));
                }
            }
            ;

            Pattern pattern101 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), new ExpressionVariable("e.W"), new ClosingBrace());

            if (RefalBase.Match(expression, pattern101))
            {
                return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern101.GetVariable("e.1"), _Implode_Ext(PassiveExpression.Build(pattern101.GetVariable("e.W"))), new ClosingBrace()))));
            }
            ;

            throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0));
        }
Beispiel #11
0
        private static PassiveExpression _Hex(PassiveExpression expression)
        {
            Pattern pattern73 = new Pattern(new SymbolVariable("s.d1"), new SymbolVariable("s.d2"));

            if (RefalBase.Match(expression, pattern73))
            {
                expression = PassiveExpression.Build(_Hex(PassiveExpression.Build(pattern73.GetVariable("s.d1"))));
                Pattern pattern74 = new Pattern(new SymbolVariable("s.h1"));
                pattern74.CopyBoundVariables(pattern73);
                if (RefalBase.Match(expression, pattern74))
                {
                    expression = PassiveExpression.Build(_Hex(PassiveExpression.Build(pattern74.GetVariable("s.d2"))));
                    Pattern pattern75 = new Pattern(new SymbolVariable("s.h2"));
                    pattern75.CopyBoundVariables(pattern74);
                    if (RefalBase.Match(expression, pattern75))
                    {
                        return(PassiveExpression.Build(_Chr(PassiveExpression.Build(_Add(PassiveExpression.Build(new OpeningBrace(), _Mul(PassiveExpression.Build(pattern75.GetVariable("s.h1"), 16)), new ClosingBrace(), pattern75.GetVariable("s.h2")))))));
                    }
                }
            }
            ;

            Pattern pattern76 = new Pattern(new SymbolVariable("s.h"));

            if (RefalBase.Match(expression, pattern76))
            {
                expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern76.GetVariable("s.h"))));
                Pattern pattern77 = new Pattern("D".ToCharArray(), new ExpressionVariable("e.D1"));
                pattern77.CopyBoundVariables(pattern76);
                if (RefalBase.Match(expression, pattern77))
                {
                    return(PassiveExpression.Build(pattern77.GetVariable("s.h")));
                }
            }
            ;

            Pattern pattern78 = new Pattern("A".ToCharArray());

            if (RefalBase.Match(expression, pattern78))
            {
                return(PassiveExpression.Build(10));
            }
            ;

            Pattern pattern79 = new Pattern("a".ToCharArray());

            if (RefalBase.Match(expression, pattern79))
            {
                return(PassiveExpression.Build(10));
            }
            ;

            Pattern pattern80 = new Pattern("B".ToCharArray());

            if (RefalBase.Match(expression, pattern80))
            {
                return(PassiveExpression.Build(11));
            }
            ;

            Pattern pattern81 = new Pattern("b".ToCharArray());

            if (RefalBase.Match(expression, pattern81))
            {
                return(PassiveExpression.Build(11));
            }
            ;

            Pattern pattern82 = new Pattern("C".ToCharArray());

            if (RefalBase.Match(expression, pattern82))
            {
                return(PassiveExpression.Build(12));
            }
            ;

            Pattern pattern83 = new Pattern("c".ToCharArray());

            if (RefalBase.Match(expression, pattern83))
            {
                return(PassiveExpression.Build(12));
            }
            ;

            Pattern pattern84 = new Pattern("D".ToCharArray());

            if (RefalBase.Match(expression, pattern84))
            {
                return(PassiveExpression.Build(13));
            }
            ;

            Pattern pattern85 = new Pattern("d".ToCharArray());

            if (RefalBase.Match(expression, pattern85))
            {
                return(PassiveExpression.Build(13));
            }
            ;

            Pattern pattern86 = new Pattern("E".ToCharArray());

            if (RefalBase.Match(expression, pattern86))
            {
                return(PassiveExpression.Build(14));
            }
            ;

            Pattern pattern87 = new Pattern("e".ToCharArray());

            if (RefalBase.Match(expression, pattern87))
            {
                return(PassiveExpression.Build(14));
            }
            ;

            Pattern pattern88 = new Pattern("F".ToCharArray());

            if (RefalBase.Match(expression, pattern88))
            {
                return(PassiveExpression.Build(15));
            }
            ;

            Pattern pattern89 = new Pattern("f".ToCharArray());

            if (RefalBase.Match(expression, pattern89))
            {
                return(PassiveExpression.Build(15));
            }
            ;

            Pattern pattern90 = new Pattern(new ExpressionVariable("e.hs"));

            if (RefalBase.Match(expression, pattern90))
            {
                return(PassiveExpression.Build());
            }
            ;

            throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0));
        }
Beispiel #12
0
        private static PassiveExpression _Quotes(PassiveExpression expression)
        {
            Pattern pattern59 = new Pattern(new SymbolVariable("s.Fun"), new SymbolVariable("s.Q"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\\\\".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern59))
            {
                expression = PassiveExpression.Build(pattern59.GetVariable("e.2"));
                {
                    Pattern pattern60 = new Pattern("x".ToCharArray(), new SymbolVariable("s.d1"), new SymbolVariable("s.d2"), new ExpressionVariable("e.3"));
                    pattern60.CopyBoundVariables(pattern59);
                    if (RefalBase.Match(expression, pattern60))
                    {
                        expression = PassiveExpression.Build(_Hex(PassiveExpression.Build(pattern60.GetVariable("s.d1"), pattern60.GetVariable("s.d2"))));
                        Pattern pattern61 = new Pattern(new SymbolVariable("s.hex"));
                        pattern61.CopyBoundVariables(pattern60);
                        if (RefalBase.Match(expression, pattern61))
                        {
                            return(PassiveExpression.Build(_Quotes(PassiveExpression.Build(pattern61.GetVariable("s.Fun"), pattern61.GetVariable("s.Q"), new OpeningBrace(), pattern61.GetVariable("e.1"), pattern61.GetVariable("s.hex"), new ClosingBrace(), pattern61.GetVariable("e.3")))));
                        }
                    }
                    ;

                    Pattern pattern62 = new Pattern(new SymbolVariable("s.A"), new ExpressionVariable("e.3"));
                    pattern62.CopyBoundVariables(pattern59);
                    if (RefalBase.Match(expression, pattern62))
                    {
                        expression = PassiveExpression.Build(_Escape(PassiveExpression.Build(pattern62.GetVariable("s.A"))));
                        Pattern pattern63 = new Pattern(new SymbolVariable("s.A1"));
                        pattern63.CopyBoundVariables(pattern62);
                        if (RefalBase.Match(expression, pattern63))
                        {
                            return(PassiveExpression.Build(_Quotes(PassiveExpression.Build(pattern63.GetVariable("s.Fun"), pattern63.GetVariable("s.Q"), new OpeningBrace(), pattern63.GetVariable("e.1"), pattern63.GetVariable("s.A1"), new ClosingBrace(), pattern63.GetVariable("e.3")))));
                        }
                    }
                    ;

                    Pattern pattern64 = new Pattern(new ExpressionVariable("e.3"));
                    pattern64.CopyBoundVariables(pattern59);
                    if (RefalBase.Match(expression, pattern64))
                    {
                        return(PassiveExpression.Build(_Prout(PassiveExpression.Build()), "*".ToCharArray(), "Error", _Prout(PassiveExpression.Build("*** ERROR: Unexpected escape sequnce in input".ToCharArray())), _Prout(PassiveExpression.Build("*** ".ToCharArray(), pattern64.GetVariable("e.1"))), _Prout(PassiveExpression.Build("*** ".ToCharArray(), "\\\\".ToCharArray(), pattern64.GetVariable("e.3")))));
                    }
                    ;

                    throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0));
                }
            }
            ;

            Pattern pattern66 = new Pattern(new SymbolVariable("s.Fun"), "\'".ToCharArray(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\'".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern66))
            {
                return(PassiveExpression.Build(_Mu(PassiveExpression.Build(pattern66.GetVariable("s.Fun"), new OpeningBrace(), pattern66.GetVariable("e.1"), new ClosingBrace(), pattern66.GetVariable("e.2")))));
            }
            ;

            Pattern pattern67 = new Pattern(new SymbolVariable("s.Fun"), "\"".ToCharArray(), new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.0"), new ClosingBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\"".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern67))
            {
                return(PassiveExpression.Build(_Mu(PassiveExpression.Build(pattern67.GetVariable("s.Fun"), new OpeningBrace(), pattern67.GetVariable("e.0"), _Implode_Ext(PassiveExpression.Build(pattern67.GetVariable("e.1"))), new ClosingBrace(), pattern67.GetVariable("e.2")))));
            }
            ;

            Pattern pattern68 = new Pattern(new SymbolVariable("s.Fun"), new SymbolVariable("s.Q"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "EOF");

            if (RefalBase.Match(expression, pattern68))
            {
                return(PassiveExpression.Build(_QuotesError(PassiveExpression.Build(pattern68.GetVariable("s.Q"), new OpeningBrace(), pattern68.GetVariable("e.1"), new ClosingBrace()))));
            }
            ;

            Pattern pattern69 = new Pattern(new SymbolVariable("s.Fun"), "\'".ToCharArray(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "*".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern69))
            {
                return(PassiveExpression.Build(_Quotes(PassiveExpression.Build(pattern69.GetVariable("s.Fun"), "\'".ToCharArray(), new OpeningBrace(), pattern69.GetVariable("e.1"), "*V".ToCharArray(), new ClosingBrace(), pattern69.GetVariable("e.2")))));
            }
            ;

            Pattern pattern70 = new Pattern(new SymbolVariable("s.Fun"), new SymbolVariable("s.Q"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new SymbolVariable("s.A"), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern70))
            {
                return(PassiveExpression.Build(_Quotes(PassiveExpression.Build(pattern70.GetVariable("s.Fun"), pattern70.GetVariable("s.Q"), new OpeningBrace(), pattern70.GetVariable("e.1"), pattern70.GetVariable("s.A"), new ClosingBrace(), pattern70.GetVariable("e.2")))));
            }
            ;

            Pattern pattern71 = new Pattern(new SymbolVariable("s.Fun"), new SymbolVariable("s.Q"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace());

            if (RefalBase.Match(expression, pattern71))
            {
                return(PassiveExpression.Build(_QuotesError(PassiveExpression.Build(pattern71.GetVariable("s.Q"), new OpeningBrace(), pattern71.GetVariable("e.1"), new ClosingBrace()))));
            }
            ;

            throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0));
        }
Beispiel #13
0
        private static PassiveExpression _Parse(PassiveExpression expression)
        {
            Pattern pattern11 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), " ".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern11))
            {
                return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern11.GetVariable("e.1"), new ClosingBrace(), pattern11.GetVariable("e.2")))));
            }
            ;

            Pattern pattern12 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\\t".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern12))
            {
                return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern12.GetVariable("e.1"), new ClosingBrace(), pattern12.GetVariable("e.2")))));
            }
            ;

            Pattern pattern13 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "(".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern13))
            {
                return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), new OpeningBrace(), pattern13.GetVariable("e.1"), new ClosingBrace(), new ClosingBrace(), pattern13.GetVariable("e.2")))));
            }
            ;

            Pattern pattern14 = new Pattern(new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2"), new ClosingBrace(), ")".ToCharArray(), new ExpressionVariable("e.3"));

            if (RefalBase.Match(expression, pattern14))
            {
                return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern14.GetVariable("e.1"), new OpeningBrace(), pattern14.GetVariable("e.2"), new ClosingBrace(), new ClosingBrace(), pattern14.GetVariable("e.3")))));
            }
            ;

            Pattern pattern15 = new Pattern(new OpeningBrace(), "$".ToCharArray(), new ExpressionVariable("e.1"), new ClosingBrace(), ")".ToCharArray(), new ExpressionVariable("e.3"));

            if (RefalBase.Match(expression, pattern15))
            {
                return(PassiveExpression.Build(_Prout(PassiveExpression.Build()), "*".ToCharArray(), "Error", _Prout(PassiveExpression.Build("*** ERROR: Unbalanced \')\' in input".ToCharArray())), _Prout(PassiveExpression.Build(pattern15.GetVariable("e.1"), ")".ToCharArray()))));
            }
            ;

            Pattern pattern16 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "<".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern16))
            {
                return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), new OpeningBrace(), pattern16.GetVariable("e.1"), "*".ToCharArray(), new ClosingBrace(), new ClosingBrace(), pattern16.GetVariable("e.2")))));
            }
            ;

            Pattern pattern17 = new Pattern(new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), "*".ToCharArray(), new ClosingBrace(), new SymbolVariable("s.F"), new ExpressionVariable("e.2"), new ClosingBrace(), ">".ToCharArray(), new ExpressionVariable("e.3"));

            if (RefalBase.Match(expression, pattern17))
            {
                expression = PassiveExpression.Build(_Checkf(PassiveExpression.Build(pattern17.GetVariable("s.F"))));
                {
                    Pattern pattern18 = new Pattern("Mul");
                    pattern18.CopyBoundVariables(pattern17);
                    if (RefalBase.Match(expression, pattern18))
                    {
                        expression = PassiveExpression.Build(pattern18.GetVariable("e.2"));
                        Pattern pattern19 = new Pattern("V".ToCharArray(), new ExpressionVariable("e.4"));
                        pattern19.CopyBoundVariables(pattern18);
                        if (RefalBase.Match(expression, pattern19))
                        {
                            return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern19.GetVariable("e.1"), new OpeningBrace(), "!".ToCharArray(), "Mul", pattern19.GetVariable("e.4"), new ClosingBrace(), new ClosingBrace(), pattern19.GetVariable("e.3")))));
                        }
                    }
                    ;

                    Pattern pattern20 = new Pattern(new SymbolVariable("s.F1"));
                    pattern20.CopyBoundVariables(pattern17);
                    if (RefalBase.Match(expression, pattern20))
                    {
                        return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern20.GetVariable("e.1"), new OpeningBrace(), "!".ToCharArray(), pattern20.GetVariable("s.F1"), pattern20.GetVariable("e.2"), new ClosingBrace(), new ClosingBrace(), pattern20.GetVariable("e.3")))));
                    }
                    ;

                    Pattern pattern21 = new Pattern();
                    pattern21.CopyBoundVariables(pattern17);
                    if (RefalBase.Match(expression, pattern21))
                    {
                        return(PassiveExpression.Build(_Prout(PassiveExpression.Build()), "*".ToCharArray(), "Error", _Prout(PassiveExpression.Build("Invalid function name ".ToCharArray(), pattern21.GetVariable("s.F")))));
                    }
                    ;

                    throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0));
                }
            }
            ;

            Pattern pattern23 = new Pattern(new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), "*".ToCharArray(), new ClosingBrace(), new ExpressionVariable("e.2"), new ClosingBrace(), ">".ToCharArray(), new ExpressionVariable("e.3"));

            if (RefalBase.Match(expression, pattern23))
            {
                return(PassiveExpression.Build(_Prout(PassiveExpression.Build()), "*".ToCharArray(), "Error", _Prout(PassiveExpression.Build("*** ERROR: No function name in input".ToCharArray())), _Prout(PassiveExpression.Build(pattern23.GetVariable("e.1"), "*(?????".ToCharArray()))));
            }
            ;

            Pattern pattern24 = new Pattern(new OpeningBrace(), "$".ToCharArray(), new ExpressionVariable("e.1"), new ClosingBrace(), ">".ToCharArray(), new ExpressionVariable("e.3"));

            if (RefalBase.Match(expression, pattern24))
            {
                return(PassiveExpression.Build(_Prout(PassiveExpression.Build()), "*".ToCharArray(), "Error", _Prout(PassiveExpression.Build("*** ERROR: Unbalanced \'>\' in input".ToCharArray())), _Prout(PassiveExpression.Build(pattern24.GetVariable("e.1"), ">".ToCharArray()))));
            }
            ;

            Pattern pattern25 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "*".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern25))
            {
                return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern25.GetVariable("e.1"), "*V".ToCharArray(), new ClosingBrace(), pattern25.GetVariable("e.2")))));
            }
            ;

            Pattern pattern26 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\'".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern26))
            {
                return(PassiveExpression.Build(_Quotes(PassiveExpression.Build("Parse", "\'".ToCharArray(), new OpeningBrace(), pattern26.GetVariable("e.1"), new ClosingBrace(), pattern26.GetVariable("e.2")))));
            }
            ;

            Pattern pattern27 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\"".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern27))
            {
                return(PassiveExpression.Build(_Quotes(PassiveExpression.Build("Parse", "\"".ToCharArray(), new OpeningBrace(), new OpeningBrace(), pattern27.GetVariable("e.1"), new ClosingBrace(), new ClosingBrace(), pattern27.GetVariable("e.2")))));
            }
            ;

            Pattern pattern28 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\\\\".ToCharArray(), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern28))
            {
                expression = PassiveExpression.Build(pattern28.GetVariable("e.2"));
                {
                    Pattern pattern29 = new Pattern("x".ToCharArray(), new SymbolVariable("s.d1"), new SymbolVariable("s.d2"), new ExpressionVariable("e.3"));
                    pattern29.CopyBoundVariables(pattern28);
                    if (RefalBase.Match(expression, pattern29))
                    {
                        expression = PassiveExpression.Build(_Hex(PassiveExpression.Build(pattern29.GetVariable("s.d1"), pattern29.GetVariable("s.d2"))));
                        Pattern pattern30 = new Pattern(new SymbolVariable("s.hex"));
                        pattern30.CopyBoundVariables(pattern29);
                        if (RefalBase.Match(expression, pattern30))
                        {
                            return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern30.GetVariable("e.1"), pattern30.GetVariable("s.hex"), new ClosingBrace(), pattern30.GetVariable("e.3")))));
                        }
                    }
                    ;

                    Pattern pattern31 = new Pattern(new SymbolVariable("s.A"), new ExpressionVariable("e.3"));
                    pattern31.CopyBoundVariables(pattern28);
                    if (RefalBase.Match(expression, pattern31))
                    {
                        expression = PassiveExpression.Build(_Escape(PassiveExpression.Build(pattern31.GetVariable("s.A"))));
                        Pattern pattern32 = new Pattern(new SymbolVariable("s.A1"));
                        pattern32.CopyBoundVariables(pattern31);
                        if (RefalBase.Match(expression, pattern32))
                        {
                            return(PassiveExpression.Build(_Parse(PassiveExpression.Build(new OpeningBrace(), pattern32.GetVariable("e.1"), pattern32.GetVariable("s.A1"), new ClosingBrace(), pattern32.GetVariable("e.3")))));
                        }
                    }
                    ;

                    Pattern pattern33 = new Pattern(new ExpressionVariable("e.3"));
                    pattern33.CopyBoundVariables(pattern28);
                    if (RefalBase.Match(expression, pattern33))
                    {
                        return(PassiveExpression.Build(_Prout(PassiveExpression.Build()), "*".ToCharArray(), "Error", _Prout(PassiveExpression.Build("*** ERROR: Unexpected escape sequnce in input".ToCharArray())), _Prout(PassiveExpression.Build("*** ".ToCharArray(), pattern33.GetVariable("e.1"))), _Prout(PassiveExpression.Build("*** ".ToCharArray(), "\\\\".ToCharArray(), pattern33.GetVariable("e.3")))));
                    }
                    ;

                    throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0));
                }
            }
            ;

            Pattern pattern35 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new SymbolVariable("s.A"), new ExpressionVariable("e.2"));

            if (RefalBase.Match(expression, pattern35))
            {
                return(PassiveExpression.Build(_Parse1(PassiveExpression.Build(new OpeningBrace(), pattern35.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), _Type(PassiveExpression.Build(pattern35.GetVariable("s.A"))), new ClosingBrace(), pattern35.GetVariable("s.A"), pattern35.GetVariable("e.2")))));
            }
            ;

            Pattern pattern36 = new Pattern(new OpeningBrace(), "$".ToCharArray(), new ExpressionVariable("e.1"), new ClosingBrace());

            if (RefalBase.Match(expression, pattern36))
            {
                return(PassiveExpression.Build(pattern36.GetVariable("e.1")));
            }
            ;

            Pattern pattern37 = new Pattern(new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2"), new ClosingBrace());

            if (RefalBase.Match(expression, pattern37))
            {
                return(PassiveExpression.Build(_Prout(PassiveExpression.Build()), "*".ToCharArray(), "Error", _Prout(PassiveExpression.Build("*** ERROR: Unbalanced \'(\' or \'<\' in input".ToCharArray())), _Prout__lm(PassiveExpression.Build(new OpeningBrace(), pattern37.GetVariable("e.1"), new ClosingBrace(), pattern37.GetVariable("e.2")))));
            }
            ;

            throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + ExpressionToString(expression, 0));
        }
Beispiel #14
0
		private static PassiveExpression _Lex(PassiveExpression expression)
		{
			Pattern pattern10 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "(".ToCharArray(), new ExpressionVariable("e.2"));
			if (pattern10.Match(expression))
			{
				return PassiveExpression.Build(_Lex(PassiveExpression.Build(new OpeningBrace(), new OpeningBrace(), pattern10.GetVariable("e.1"), new ClosingBrace(), new ClosingBrace(), pattern10.GetVariable("e.2"))));
			};

			Pattern pattern11 = new Pattern(new OpeningBrace(), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ExpressionVariable("e.2"), new ClosingBrace(), ")".ToCharArray(), new ExpressionVariable("e.3"));
			if (pattern11.Match(expression))
			{
				return PassiveExpression.Build(_Lex(PassiveExpression.Build(new OpeningBrace(), pattern11.GetVariable("e.1"), new OpeningBrace(), pattern11.GetVariable("e.2"), new ClosingBrace(), new ClosingBrace(), pattern11.GetVariable("e.3"))));
			};

			Pattern pattern12 = new Pattern(new OpeningBrace(), "$".ToCharArray(), new ExpressionVariable("e.1"), new ClosingBrace(), ")".ToCharArray(), new ExpressionVariable("e.3"));
			if (pattern12.Match(expression))
			{
				return PassiveExpression.Build(_Prout(PassiveExpression.Build("ERROR: Unpaired right parenthsis:".ToCharArray())), _Prout(PassiveExpression.Build(pattern12.GetVariable("e.1"), ")".ToCharArray())));
			};

			Pattern pattern13 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), " ".ToCharArray(), new ExpressionVariable("e.2"));
			if (pattern13.Match(expression))
			{
				return PassiveExpression.Build(_Lex(PassiveExpression.Build(new OpeningBrace(), pattern13.GetVariable("e.1"), new ClosingBrace(), pattern13.GetVariable("e.2"))));
			};

			Pattern pattern14 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\\t".ToCharArray(), new ExpressionVariable("e.2"));
			if (pattern14.Match(expression))
			{
				return PassiveExpression.Build(_Lex(PassiveExpression.Build(new OpeningBrace(), pattern14.GetVariable("e.1"), new ClosingBrace(), pattern14.GetVariable("e.2"))));
			};

			Pattern pattern15 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\'".ToCharArray(), new ExpressionVariable("e.2"));
			if (pattern15.Match(expression))
			{
				expression = PassiveExpression.Build(_Quotes(PassiveExpression.Build("\'".ToCharArray(), new OpeningBrace(), new ClosingBrace(), pattern15.GetVariable("e.2"))));
				{
					Pattern pattern16 = new Pattern(new OpeningBrace(), new ClosingBrace(), new ExpressionVariable("e.3"));
					pattern16.CopyBoundVariables(pattern15);
					if (pattern16.Match(expression))
					{
						return PassiveExpression.Build(_Prout(PassiveExpression.Build("ERROR: Unpaired quote \'".ToCharArray(), pattern16.GetVariable("e.2"))));
					};

					Pattern pattern17 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.0"), new ClosingBrace(), new ExpressionVariable("e.3"));
					pattern17.CopyBoundVariables(pattern15);
					if (pattern17.Match(expression))
					{
						return PassiveExpression.Build(_Lex(PassiveExpression.Build(new OpeningBrace(), pattern17.GetVariable("e.1"), pattern17.GetVariable("e.0"), new ClosingBrace(), pattern17.GetVariable("e.2"))));
					};

					throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString());
				}
			};

			Pattern pattern19 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new SymbolVariable("s.A"), new ExpressionVariable("e.2"));
			if (pattern19.Match(expression))
			{
				expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern19.GetVariable("s.A"))));
				{
					Pattern pattern20 = new Pattern("L".ToCharArray(), new ExpressionVariable("e.A1"));
					pattern20.CopyBoundVariables(pattern19);
					if (pattern20.Match(expression))
					{
						expression = PassiveExpression.Build(_Id__tail(PassiveExpression.Build(new OpeningBrace(), pattern20.GetVariable("s.A"), new ClosingBrace(), pattern20.GetVariable("e.2"))));
						Pattern pattern21 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.Id"), new ClosingBrace(), new ExpressionVariable("e.3"));
						pattern21.CopyBoundVariables(pattern20);
						if (pattern21.Match(expression))
						{
							return PassiveExpression.Build(_Lex(PassiveExpression.Build(new OpeningBrace(), pattern21.GetVariable("e.1"), _Implode(PassiveExpression.Build(pattern21.GetVariable("e.Id"))), new ClosingBrace(), pattern21.GetVariable("e.3"))));
						}
					};

					Pattern pattern22 = new Pattern("D".ToCharArray(), new ExpressionVariable("e.A1"));
					pattern22.CopyBoundVariables(pattern19);
					if (pattern22.Match(expression))
					{
						expression = PassiveExpression.Build(_D__string(PassiveExpression.Build(new OpeningBrace(), pattern22.GetVariable("s.A"), new ClosingBrace(), pattern22.GetVariable("e.2"))));
						Pattern pattern23 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.D-Str"), new ClosingBrace(), new ExpressionVariable("e.3"));
						pattern23.CopyBoundVariables(pattern22);
						if (pattern23.Match(expression))
						{
							return PassiveExpression.Build(_Lex(PassiveExpression.Build(new OpeningBrace(), pattern23.GetVariable("e.1"), _Numb(PassiveExpression.Build(pattern23.GetVariable("e.D-Str"))), new ClosingBrace(), pattern23.GetVariable("e.3"))));
						}
					};

					Pattern pattern24 = new Pattern(new SymbolVariable("s.T"), new ExpressionVariable("e.A1"));
					pattern24.CopyBoundVariables(pattern19);
					if (pattern24.Match(expression))
					{
						return PassiveExpression.Build(_Lex(PassiveExpression.Build(new OpeningBrace(), pattern24.GetVariable("e.1"), pattern24.GetVariable("s.A"), new ClosingBrace(), pattern24.GetVariable("e.2"))));
					};

					throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString());
				}
			};

			Pattern pattern26 = new Pattern(new OpeningBrace(), "$".ToCharArray(), new ExpressionVariable("e.1"), new ClosingBrace());
			if (pattern26.Match(expression))
			{
				return PassiveExpression.Build(pattern26.GetVariable("e.1"));
			};

			Pattern pattern27 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.M"), new ClosingBrace());
			if (pattern27.Match(expression))
			{
				return PassiveExpression.Build(_Prout(PassiveExpression.Build("ERROR: Unpaired left parentheses".ToCharArray())), _Pr__lmb(PassiveExpression.Build(pattern27.GetVariable("e.M"))));
			};

			throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString());
		}
Beispiel #15
0
        private static PassiveExpression _Lookp(PassiveExpression expression)
        {
            Pattern pattern21 = 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 (pattern21.Match(expression))
            {
                return(PassiveExpression.Build(_Lookp(PassiveExpression.Build(new OpeningBrace(), pattern21.GetVariable("e.ML"), new OpeningBrace(), pattern21.GetVariable("e.1"), new ClosingBrace(), new OpeningBrace(), "[".ToCharArray(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern21.GetVariable("e.2"), new ClosingBrace()))));
            }
            ;

            Pattern pattern22 = new Pattern(new OpeningBrace(), new OpeningBrace(), "[".ToCharArray(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "]".ToCharArray(), new ExpressionVariable("e.2"), new ClosingBrace());

            if (pattern22.Match(expression))
            {
                return(PassiveExpression.Build(_Transl(PassiveExpression.Build(new OpeningBrace(), new OpeningBrace(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "[".ToCharArray(), pattern22.GetVariable("e.1"), "]".ToCharArray(), new ClosingBrace())), pattern22.GetVariable("e.2")));
            }
            ;

            Pattern pattern23 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.ML"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new OpeningBrace(), "[".ToCharArray(), new ExpressionVariable("e.2"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "]".ToCharArray(), new ExpressionVariable("e.3"), new ClosingBrace());

            if (pattern23.Match(expression))
            {
                return(PassiveExpression.Build(_Lookp(PassiveExpression.Build(new OpeningBrace(), pattern23.GetVariable("e.ML"), new OpeningBrace(), pattern23.GetVariable("e.1"), _Transl(PassiveExpression.Build(new OpeningBrace(), new OpeningBrace(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "[".ToCharArray(), pattern23.GetVariable("e.2"), "]".ToCharArray(), new ClosingBrace())), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern23.GetVariable("e.3"), new ClosingBrace()))));
            }
            ;

            Pattern pattern24 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.L"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "\"".ToCharArray(), new ExpressionVariable("e.2"), new ClosingBrace());

            if (pattern24.Match(expression))
            {
                expression = PassiveExpression.Build(_Quotes(PassiveExpression.Build("\"".ToCharArray(), new OpeningBrace(), new ClosingBrace(), pattern24.GetVariable("e.2"))));
                Pattern pattern25 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.0"), new ClosingBrace(), new ExpressionVariable("e.3"));
                pattern25.CopyBoundVariables(pattern24);
                if (pattern25.Match(expression))
                {
                    return(PassiveExpression.Build(_Lookp(PassiveExpression.Build(new OpeningBrace(), pattern25.GetVariable("e.L"), new OpeningBrace(), pattern25.GetVariable("e.1"), new OpeningBrace(), pattern25.GetVariable("e.0"), new ClosingBrace(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern25.GetVariable("e.3"), new ClosingBrace()))));
                }
            }
            ;

            Pattern pattern26 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.L"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "\'".ToCharArray(), new ExpressionVariable("e.2"), new ClosingBrace());

            if (pattern26.Match(expression))
            {
                expression = PassiveExpression.Build(_Quotes(PassiveExpression.Build("\'".ToCharArray(), new OpeningBrace(), new ClosingBrace(), pattern26.GetVariable("e.2"))));
                Pattern pattern27 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.0"), new ClosingBrace(), new ExpressionVariable("e.3"));
                pattern27.CopyBoundVariables(pattern26);
                if (pattern27.Match(expression))
                {
                    return(PassiveExpression.Build(_Lookp(PassiveExpression.Build(new OpeningBrace(), pattern27.GetVariable("e.L"), new OpeningBrace(), pattern27.GetVariable("e.1"), new OpeningBrace(), pattern27.GetVariable("e.0"), new ClosingBrace(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern27.GetVariable("e.3"), new ClosingBrace()))));
                }
            }
            ;

            Pattern pattern28 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.L"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), "/*".ToCharArray(), new ExpressionVariable("e.2"), "*/".ToCharArray(), new ExpressionVariable("e.3"), new ClosingBrace());

            if (pattern28.Match(expression))
            {
                return(PassiveExpression.Build(_Lookp(PassiveExpression.Build(new OpeningBrace(), pattern28.GetVariable("e.L"), new OpeningBrace(), pattern28.GetVariable("e.1"), new OpeningBrace(), "/*".ToCharArray(), pattern28.GetVariable("e.2"), "*/".ToCharArray(), new ClosingBrace(), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern28.GetVariable("e.3"), new ClosingBrace()))));
            }
            ;

            Pattern pattern29 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.L"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), 0, new ClosingBrace());

            if (pattern29.Match(expression))
            {
                return(PassiveExpression.Build(_Ermes(PassiveExpression.Build("ERROR: No pair for [".ToCharArray()))));
            }
            ;

            Pattern pattern30 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.L"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), new SymbolVariable("s.A"), new ExpressionVariable("e.2"), new ClosingBrace());

            if (pattern30.Match(expression))
            {
                return(PassiveExpression.Build(_Lookp(PassiveExpression.Build(new OpeningBrace(), pattern30.GetVariable("e.L"), new OpeningBrace(), pattern30.GetVariable("e.1"), pattern30.GetVariable("s.A"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), pattern30.GetVariable("e.2"), new ClosingBrace()))));
            }
            ;

            Pattern pattern31 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.L"), new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), new ClosingBrace());

            if (pattern31.Match(expression))
            {
                return(PassiveExpression.Build(_Lookp(PassiveExpression.Build(new OpeningBrace(), pattern31.GetVariable("e.L"), new OpeningBrace(), pattern31.GetVariable("e.1"), ".EOL.", new ClosingBrace(), new ClosingBrace(), new OpeningBrace(), _Next(PassiveExpression.Build()), new ClosingBrace()))));
            }
            ;

            throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString());
        }
Beispiel #16
0
        private static PassiveExpression _Lookm(PassiveExpression expression)
        {
            Pattern pattern13 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "[".ToCharArray(), new ExpressionVariable("e.2"));

            if (pattern13.Match(expression))
            {
                return(PassiveExpression.Build(new OpeningBrace(), pattern13.GetVariable("e.1"), new ClosingBrace(), "[".ToCharArray(), pattern13.GetVariable("e.2")));
            }
            ;

            Pattern pattern14 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\"".ToCharArray(), new ExpressionVariable("e.2"));

            if (pattern14.Match(expression))
            {
                expression = PassiveExpression.Build(_Quotes(PassiveExpression.Build("\"".ToCharArray(), new OpeningBrace(), new ClosingBrace(), pattern14.GetVariable("e.2"))));
                Pattern pattern15 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.0"), new ClosingBrace(), new ExpressionVariable("e.3"));
                pattern15.CopyBoundVariables(pattern14);
                if (pattern15.Match(expression))
                {
                    return(PassiveExpression.Build(_Lookm(PassiveExpression.Build(new OpeningBrace(), pattern15.GetVariable("e.1"), pattern15.GetVariable("e.0"), new ClosingBrace(), pattern15.GetVariable("e.3")))));
                }
            }
            ;

            Pattern pattern16 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "\'".ToCharArray(), new ExpressionVariable("e.2"));

            if (pattern16.Match(expression))
            {
                expression = PassiveExpression.Build(_Quotes(PassiveExpression.Build("\'".ToCharArray(), new OpeningBrace(), new ClosingBrace(), pattern16.GetVariable("e.2"))));
                Pattern pattern17 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.0"), new ClosingBrace(), new ExpressionVariable("e.3"));
                pattern17.CopyBoundVariables(pattern16);
                if (pattern17.Match(expression))
                {
                    return(PassiveExpression.Build(_Lookm(PassiveExpression.Build(new OpeningBrace(), pattern17.GetVariable("e.1"), pattern17.GetVariable("e.0"), new ClosingBrace(), pattern17.GetVariable("e.3")))));
                }
            }
            ;

            Pattern pattern18 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), "/*".ToCharArray(), new ExpressionVariable("e.2"), "*/".ToCharArray(), new ExpressionVariable("e.3"));

            if (pattern18.Match(expression))
            {
                return(PassiveExpression.Build(_Lookm(PassiveExpression.Build(new OpeningBrace(), pattern18.GetVariable("e.1"), "/*".ToCharArray(), pattern18.GetVariable("e.2"), "*/".ToCharArray(), new ClosingBrace(), pattern18.GetVariable("e.3")))));
            }
            ;

            Pattern pattern19 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace(), new TermVariable("t.A"), new ExpressionVariable("e.2"));

            if (pattern19.Match(expression))
            {
                return(PassiveExpression.Build(_Lookm(PassiveExpression.Build(new OpeningBrace(), pattern19.GetVariable("e.1"), pattern19.GetVariable("t.A"), new ClosingBrace(), pattern19.GetVariable("e.2")))));
            }
            ;

            Pattern pattern20 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.1"), new ClosingBrace());

            if (pattern20.Match(expression))
            {
                return(PassiveExpression.Build(pattern20.GetVariable("e.1")));
            }
            ;

            throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString());
        }
Beispiel #17
0
		private static PassiveExpression _Parse(PassiveExpression expression)
		{
			Pattern pattern48 = new Pattern(new ExpressionVariable("e.Exp"));
			if (pattern48.Match(expression))
			{
				expression = PassiveExpression.Build(_Last1(PassiveExpression.Build(new OpeningBrace(), "+-".ToCharArray(), new ClosingBrace(), pattern48.GetVariable("e.Exp"), new OpeningBrace(), new ClosingBrace())));
				Pattern pattern49 = new Pattern(new ExpressionVariable("e.1"), new SymbolVariable("s.Op"), new OpeningBrace(), new ExpressionVariable("e.2"), new ClosingBrace());
				pattern49.CopyBoundVariables(pattern48);
				if (pattern49.Match(expression))
				{
					return PassiveExpression.Build(pattern49.GetVariable("s.Op"), new OpeningBrace(), _Parse(PassiveExpression.Build(pattern49.GetVariable("e.1"))), new ClosingBrace(), _Parse(PassiveExpression.Build(pattern49.GetVariable("e.2"))));
				}
			};

			Pattern pattern50 = new Pattern(new ExpressionVariable("e.Exp"));
			if (pattern50.Match(expression))
			{
				expression = PassiveExpression.Build(_Last1(PassiveExpression.Build(new OpeningBrace(), "*/".ToCharArray(), new ClosingBrace(), pattern50.GetVariable("e.Exp"), new OpeningBrace(), new ClosingBrace())));
				Pattern pattern51 = new Pattern(new ExpressionVariable("e.1"), new SymbolVariable("s.Op"), new OpeningBrace(), new ExpressionVariable("e.2"), new ClosingBrace());
				pattern51.CopyBoundVariables(pattern50);
				if (pattern51.Match(expression))
				{
					return PassiveExpression.Build(pattern51.GetVariable("s.Op"), new OpeningBrace(), _Parse(PassiveExpression.Build(pattern51.GetVariable("e.1"))), new ClosingBrace(), _Parse(PassiveExpression.Build(pattern51.GetVariable("e.2"))));
				}
			};

			Pattern pattern52 = new Pattern(new ExpressionVariable("e.1"), "^".ToCharArray(), new ExpressionVariable("e.2"));
			if (pattern52.Match(expression))
			{
				return PassiveExpression.Build("^".ToCharArray(), new OpeningBrace(), _Parse(PassiveExpression.Build(pattern52.GetVariable("e.1"))), new ClosingBrace(), _Parse(PassiveExpression.Build(pattern52.GetVariable("e.2"))));
			};

			Pattern pattern53 = new Pattern(new SymbolVariable("s.Symb"));
			if (pattern53.Match(expression))
			{
				expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern53.GetVariable("s.Symb"))));
				Pattern pattern54 = new Pattern("Wi".ToCharArray(), new ExpressionVariable("e.S"));
				pattern54.CopyBoundVariables(pattern53);
				if (pattern54.Match(expression))
				{
					return PassiveExpression.Build(pattern54.GetVariable("s.Symb"));
				}
			};

			Pattern pattern55 = new Pattern(new SymbolVariable("s.Symb"));
			if (pattern55.Match(expression))
			{
				expression = PassiveExpression.Build(_Type(PassiveExpression.Build(pattern55.GetVariable("s.Symb"))));
				Pattern pattern56 = new Pattern("N".ToCharArray(), new ExpressionVariable("e.S"));
				pattern56.CopyBoundVariables(pattern55);
				if (pattern56.Match(expression))
				{
					return PassiveExpression.Build(pattern56.GetVariable("s.Symb"));
				}
			};

			Pattern pattern57 = new Pattern(new OpeningBrace(), new ExpressionVariable("e.Exp"), new ClosingBrace());
			if (pattern57.Match(expression))
			{
				return PassiveExpression.Build(_Parse(PassiveExpression.Build(pattern57.GetVariable("e.Exp"))));
			};

			Pattern pattern58 = new Pattern();
			if (pattern58.Match(expression))
			{
				return PassiveExpression.Build();
			};

			Pattern pattern59 = new Pattern(new ExpressionVariable("e.Exp"));
			if (pattern59.Match(expression))
			{
				return PassiveExpression.Build(_Prout(PassiveExpression.Build("Syntax error. Cannot parse ".ToCharArray(), pattern59.GetVariable("e.Exp"))), _Br(PassiveExpression.Build("compl=fail".ToCharArray())));
			};

			throw new RecognitionImpossibleException("Recognition impossible. Last expression: " + expression.ToString());
		}