Esempio n. 1
0
		/// <summary>
		/// 初始化模板解析器。
		/// </summary>
		/// <param name="lexer">指定一个模板词汇分析器的实例。</param>
		public TemplateParser(TemplateLexer lexer)
		{
			_Lexer = lexer;
			_Elements = new List<Element>();
			
		}
Esempio n. 2
0
		/// <summary>
		/// 从模板代码初始化模板对象。
		/// </summary>
		/// <param name="name">指定模板名称。</param>
		/// <param name="data">包含模板代码的字符串。</param>
		/// <returns>Template</returns>
		public static Template FromString(string name, string data)
		{
			TemplateLexer lexer = new TemplateLexer(data);
			TemplateParser parser = new TemplateParser(lexer);
			List<Element> elems = parser.Parse();

			TagParser tagParser = new TagParser(elems);
			elems = tagParser.CreateHierarchy();

			return new Template(name, elems);
		}
Esempio n. 3
0
 /// <summary>
 /// 初始化模板解析器。
 /// </summary>
 /// <param name="lexer">指定一个模板词汇分析器的实例。</param>
 public TemplateParser(TemplateLexer lexer)
 {
     _Lexer    = lexer;
     _Elements = new List <Element>();
 }