예제 #1
0
 internal ReferenceBTValue(BTType btType)
 {
     this.next   = null;
     this.types  = new ArrayList();
     this.btType = btType;
     this.flds   = new Hashtable();
     this.crtrs  = new Creators();
 }
예제 #2
0
파일: BTA.cs 프로젝트: DragonXYZ/cilpe
        public static BTType[] GetObjectFieldBTTypes(NewObject upNode)
        {
            ReferenceBTValue obj = AnnotatingVisitor.GetNewBTValue(upNode);
            FieldInfo[] fldInfos = ReflectionUtils.GetAllFields(upNode.Constructor.DeclaringType);
            BTType[] btTypes = new BTType[fldInfos.Length];
            for (int i = 0; i < btTypes.Length; i++)
                btTypes[i] = obj[fldInfos[i]].BTType;

            return btTypes;
        }
예제 #3
0
 internal override Creators Lift()
 {
     if (this.btType == BTType.Static)
     {
         this.btType = BTType.Dynamic;
         return(this.crtrs);
     }
     else
     {
         return(new Creators());
     }
 }
예제 #4
0
 private Creators lift()
 {
     if (this.btType == BTType.Static)
     {
         this.btType = BTType.Dynamic;
         this.flds.Clear();
         return(this.crtrs);
     }
     else
     {
         return(new Creators());
     }
 }
예제 #5
0
파일: BTValues.cs 프로젝트: DragonXYZ/cilpe
 private Creators lift()
 {
     if (this.btType == BTType.Static)
     {
         this.btType = BTType.Dynamic;
         this.flds.Clear();
         return this.crtrs;
     }
     else
         return new Creators();
 }
예제 #6
0
파일: BTValues.cs 프로젝트: DragonXYZ/cilpe
 internal static ReferenceBTValue NewReferenceBTValue(Type type, BTType btType)
 {
     return type == typeof(void) ? null : new ReferenceBTValue(btType);
 }
예제 #7
0
파일: BTValues.cs 프로젝트: DragonXYZ/cilpe
 internal ReferenceBTValue(Type type, BTType btType)
 {
     this.next = null;
     this.types = new ArrayList();
     this.addType(type);
     this.btType = btType;
     this.flds = new Hashtable();
     this.crtrs = new Creators();
 }
예제 #8
0
파일: BTValues.cs 프로젝트: DragonXYZ/cilpe
 internal override Creators Lift()
 {
     if (this.btType == BTType.Static)
     {
         this.btType = BTType.Dynamic;
         return this.crtrs;
     }
     else
         return new Creators();
 }
예제 #9
0
파일: BTValues.cs 프로젝트: DragonXYZ/cilpe
 internal PrimitiveBTValue(BTType btType)
 {
     this.btType = btType;
     this.crtrs = new Creators();
 }
예제 #10
0
파일: BTValues.cs 프로젝트: DragonXYZ/cilpe
 internal NBTValue(BTType btType)
 {
     this.next = null;
     this.types = new ArrayList();
     this.btType = btType;
     this.flds = new Hashtable();
     this.crtrs = new Creators();
 }
예제 #11
0
파일: BTA.cs 프로젝트: DragonXYZ/cilpe
 internal static void SetNodeBTType(Node upNode, BTType btType)
 {
     upNode.Options["BTType"] = btType;
 }
예제 #12
0
 internal static ReferenceBTValue NewReferenceBTValue(Type type, BTType btType)
 {
     return(type == typeof(void) ? null : new ReferenceBTValue(btType));
 }
예제 #13
0
 internal PrimitiveBTValue(BTType btType)
 {
     this.btType = btType;
     this.crtrs  = new Creators();
 }