예제 #1
0
            Stack <Rule> CreateRuleStack()
            {
                var result = new Stack <Rule> ();

                if (mode == null)
                {
                    return(result);
                }
                Rule rule = mode;

                result.Push(mode);
                foreach (Span span in spanStack.Reverse())
                {
                    Rule tmp = rule.GetRule(doc, span.Rule) ?? CurRule;
                    result.Push(tmp);
                    rule = tmp;
                }
                return(result);
            }