System.Web.Compilation.TemplateControlCompiler.AddParsedSubObjectStmt C# (CSharp) Method

AddParsedSubObjectStmt() static private method

static private AddParsedSubObjectStmt ( ControlBuilder builder, System.CodeDom.CodeExpression expr ) : void
builder System.Web.UI.ControlBuilder
expr System.CodeDom.CodeExpression
return void
		void AddParsedSubObjectStmt (ControlBuilder builder, CodeExpression expr) 
		{
			if (!builder.HaveParserVariable) {
				CodeVariableDeclarationStatement p = new CodeVariableDeclarationStatement();
				p.Name = "__parser";
				p.Type = new CodeTypeReference (typeof (IParserAccessor));
				p.InitExpression = new CodeCastExpression (typeof (IParserAccessor), ctrlVar);
				builder.MethodStatements.Add (p);
				builder.HaveParserVariable = true;
			}

			CodeVariableReferenceExpression var = new CodeVariableReferenceExpression ("__parser");
			CodeMethodInvokeExpression invoke = new CodeMethodInvokeExpression (var, "AddParsedSubObject");
			invoke.Parameters.Add (expr);
			builder.MethodStatements.Add (AddLinePragma (invoke, builder));
		}
TemplateControlCompiler