Esempio n. 1
0
        void Trigger(Rule top)
        {
            string name;
            var    rule = new Rule(top, false);

            UpdateLocation();

            Expect(16);
            Identifier(out name);
            rule.Event = SM.AddEvent(name);
            while (la.kind == 21 || la.kind == 22 || la.kind == 23)
            {
                Action(rule);
            }
            rule.CreateTrigger(SM);
            while (la.kind == 18)
            {
                Rule when = new Rule(rule, true);
                WhenClause(when);
                while (la.kind == 21 || la.kind == 22 || la.kind == 23)
                {
                    Action(when);
                }
                when.CreateTrigger(SM);
            }
        }