예제 #1
0
		private void acceptState (CssParserStates s)
		{
			Console.WriteLine("Accepted State: {0}", s.ToString ());
			CssParserStates popState;
			SimpleElement child;
			SimpleElement parent;
			
			// Dont pop root element
			if (elements.Count == 1)
				parent = (SimpleElement) elements.Peek ();
			else
				parent = (SimpleElement) elements.Pop ();
			
			Console.WriteLine("Adding child to: {0}", parent.TagName );
			CssToken t;
			while ((popState = (CssParserStates) state.Pop ()) != s) {
				child = new SimpleElement (popState.ToString ());
				t = (CssToken) tokens.Pop ();
				child.Text = t.GetValue ();
				parent.ChildElements.Add (child);
			}
			
			rootElement.ChildElements.Add (parent);
		}
예제 #2
0
		private void addParentNode (CssParserStates s)
		{
			SimpleElement element = new SimpleElement (s.ToString ());
			elements.Push (element);
		}