示例#1
0
 public XamlIlLoadMethodDelegateNode(IXamlIlLineInfo lineInfo, IXamlIlAstValueNode value,
                                     IXamlIlType delegateType, IXamlIlMethod method) : base(lineInfo, value)
 {
     DelegateType = delegateType;
     Method       = method;
     Type         = new XamlIlAstClrTypeReference(value, DelegateType);
 }
示例#2
0
 public XamlIlTypeExtensionNode(IXamlIlLineInfo lineInfo, IXamlIlAstTypeReference value,
                                IXamlIlType systemType) : base(lineInfo)
 {
     _systemType = systemType;
     Type        = new XamlIlAstClrTypeReference(this, systemType);
     Value       = value;
 }
示例#3
0
 public XamlIlMarkupExtensionNode(IXamlIlLineInfo lineInfo, IXamlIlMethod provideValue,
                                  IXamlIlAstValueNode value) : base(lineInfo)
 {
     ProvideValue = provideValue;
     Value        = value;
     Type         = new XamlIlAstClrTypeReference(this, ProvideValue.ReturnType, false);
 }
示例#4
0
文件: Clr.cs 项目: cm4ker/XamlIl
 public XamlIlAstNewClrObjectNode(IXamlIlLineInfo lineInfo,
                                  IXamlIlType type, IXamlIlConstructor ctor,
                                  List <IXamlIlAstValueNode> arguments) : base(lineInfo)
 {
     Type        = new XamlIlAstClrTypeReference(lineInfo, type);
     Constructor = ctor;
     Arguments   = arguments;
 }
示例#5
0
 public XamlIlConstantNode(IXamlIlLineInfo lineInfo, IXamlIlType type, object constant) : base(lineInfo)
 {
     if (!constant.GetType().IsPrimitive)
     {
         throw new ArgumentException($"Don't know how to emit {constant.GetType()} constant");
     }
     Constant = constant;
     Type     = new XamlIlAstClrTypeReference(lineInfo, type);
 }
示例#6
0
文件: Xaml.cs 项目: cm4ker/XamlIl
 public XamlIlAstTextNode(IXamlIlLineInfo lineInfo, string text, IXamlIlType type = null) : base(lineInfo)
 {
     Text = text;
     if (type != null)
     {
         Type = new XamlIlAstClrTypeReference(lineInfo, type);
     }
     else
     {
         Type = new XamlIlAstXmlTypeReference(lineInfo, XamlNamespaces.Xaml2006, "String");
     }
 }
示例#7
0
 public XamlIlAstContextLocalNode(IXamlIlLineInfo lineInfo, IXamlIlType type) : base(lineInfo)
 {
     Type = new XamlIlAstClrTypeReference(this, type, false);
 }
示例#8
0
 public XamlIlAstCompilerLocalNode(IXamlIlLineInfo lineInfo, XamlIlAstClrTypeReference type) : base(lineInfo)
 {
     Type           = type.Type;
     _typeReference = type;
 }
示例#9
0
 public XamlIlNullExtensionNode(IXamlIlLineInfo lineInfo) : base(lineInfo)
 {
     Type = new XamlIlAstClrTypeReference(lineInfo, XamlIlPseudoType.Null);
 }
示例#10
0
文件: Clr.cs 项目: cm4ker/XamlIl
 public XamlIlStaticOrTargetedReturnMethodCallNode(IXamlIlLineInfo lineInfo, IXamlIlWrappedMethod method,
                                                   IEnumerable <IXamlIlAstValueNode> args)
     : base(lineInfo, method, args)
 {
     Type = new XamlIlAstClrTypeReference(lineInfo, method.ReturnType);
 }
示例#11
0
 public XamlIlIntermediateRootObjectNode(IXamlIlLineInfo lineInfo, XamlIlTypeWellKnownTypes types) : base(lineInfo)
 {
     Type = new XamlIlAstClrTypeReference(lineInfo, types.Object, false);
 }