void IHRONEntity2.Apply(SubString name, IScannerVisitor visitor)
        {
            if (visitor == null)
            {
                return;
            }

            visitor.Value_Begin(name);
            foreach (var line in m_value.ReadLines())
            {
                visitor.Value_Line(line);
            }
            visitor.Value_End();
        }
Пример #2
0
 public Scanner(IScannerVisitor visitor)
 {
     m_visitor = visitor;
     State = ParserState.PreProcessing;
 }
        static void VisitDynamic(
            HRONObject hronObject,
            IScannerVisitor visitor
            )
        {
            if (hronObject == null)
            {
                return;
            }

            hronObject.Visit(visitor);
        }
        internal void Visit(IScannerVisitor visitor)
        {
            if (visitor == null)
            {
                return;
            }

            for (var index = 0; index < m_members.Length; index++)
            {
                var pair = m_members[index];
                var innerName = pair.Name.ToSubString();
                pair.Value.Apply(innerName, visitor);
            }
        }
        void IHRONEntity2.Apply(SubString name, IScannerVisitor visitor)
        {
            if (visitor == null)
            {
                return;
            }

            visitor.Object_Begin(name);
            for (var index = 0; index < m_members.Length; index++)
            {
                var pair = m_members[index];
                var innerName = pair.Name.ToSubString();
                pair.Value.Apply(innerName, visitor);
            }
            visitor.Object_End();
        }
Пример #6
0
 static void ReadDocument(IScannerVisitor v, SubString[] lines)
 {
     var scanner = new Scanner(v);
     v.Document_Begin();
     for (int index = 0; index < lines.Length; index++)
     {
         var line = lines[index];
         scanner.AcceptLine(line);
     }
     scanner.AcceptEndOfStream();
     v.Document_End();
 }