e79aa3c0ed
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
46 lines
1.7 KiB
C#
46 lines
1.7 KiB
C#
//------------------------------------------------------------
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
//------------------------------------------------------------
|
|
|
|
namespace Microsoft.Build.Tasks.Xaml
|
|
{
|
|
using System;
|
|
using System.CodeDom;
|
|
|
|
static class CodeDomExtensionMethods
|
|
{
|
|
internal static CodeVariableReferenceExpression DeclareVar(this CodeStatementCollection block, Type type,
|
|
string name, CodeExpression initExpression)
|
|
{
|
|
block.Add(new CodeVariableDeclarationStatement()
|
|
{
|
|
Name = name,
|
|
Type = new CodeTypeReference(type),
|
|
InitExpression = initExpression
|
|
});
|
|
return new CodeVariableReferenceExpression(name);
|
|
}
|
|
|
|
internal static CodeFieldReferenceExpression Field(this CodeExpression targetObject, string fieldName)
|
|
{
|
|
return new CodeFieldReferenceExpression(targetObject, fieldName);
|
|
}
|
|
|
|
internal static CodeMethodInvokeExpression Invoke(this CodeExpression targetObject, string methodName,
|
|
params CodeExpression[] parameters)
|
|
{
|
|
return new CodeMethodInvokeExpression(targetObject, methodName, parameters);
|
|
}
|
|
|
|
internal static CodeObjectCreateExpression New(this Type type, params CodeExpression[] parameters)
|
|
{
|
|
return new CodeObjectCreateExpression(type, parameters);
|
|
}
|
|
|
|
internal static CodePropertyReferenceExpression Property(this CodeExpression targetObject, string propertyName)
|
|
{
|
|
return new CodePropertyReferenceExpression(targetObject, propertyName);
|
|
}
|
|
}
|
|
}
|