Example #1
0
        CreateNestedTypeDefCommand(ITypeNode ownerType, TypeDefOptions options)
        {
            this.ownerType = ownerType;

            var modNode = ownerType.GetModuleNode();

            Debug.Assert(modNode != null);
            if (modNode == null)
            {
                throw new InvalidOperationException();
            }
            this.nestedType = ownerType.Create(options.CreateTypeDef(modNode.DnSpyFile.ModuleDef));
        }
Example #2
0
        static ITypeNode GetOrCreateNestedTypeTreeNode(ITypeNode typeNode, TypeDef nestedType)
        {
            Debug.Assert(nestedType != null && nestedType.DeclaringType == typeNode.TypeDef);
            typeNode.TreeNode.EnsureChildrenLoaded();
            var childTypeNode = typeNode.TreeNode.DataChildren.OfType <ITypeNode>().FirstOrDefault(a => a.TypeDef == nestedType);

            if (childTypeNode != null)
            {
                return(childTypeNode);
            }
            childTypeNode = typeNode.Create(nestedType);
            typeNode.TreeNode.AddChild(childTypeNode.TreeNode);
            return(childTypeNode);
        }
Example #3
0
 CreatePropertyDefCommand(ITypeNode ownerNode, PropertyDefOptions options)
 {
     this.ownerNode = ownerNode;
     this.propNode  = ownerNode.Create(options.CreatePropertyDef(ownerNode.TypeDef.Module));
 }
Example #4
0
 CreateMethodDefCommand(ITypeNode ownerNode, MethodDefOptions options)
 {
     this.ownerNode  = ownerNode;
     this.methodNode = ownerNode.Create(options.CreateMethodDef(ownerNode.TypeDef.Module));
 }
Example #5
0
		CreateFieldDefCommand(ITypeNode ownerNode, FieldDefOptions options) {
			this.ownerNode = ownerNode;
			this.fieldNode = ownerNode.Create(options.CreateFieldDef(ownerNode.TypeDef.Module));
		}
Example #6
0
 CreateEventDefCommand(ITypeNode ownerNode, EventDefOptions options)
 {
     this.ownerNode = ownerNode;
     this.eventNode = ownerNode.Create(options.CreateEventDef(ownerNode.TypeDef.Module));
 }
Example #7
0
 CreateFieldDefCommand(ITypeNode ownerNode, FieldDefOptions options)
 {
     this.ownerNode = ownerNode;
     this.fieldNode = ownerNode.Create(options.CreateFieldDef(ownerNode.TypeDef.Module));
 }
Example #8
0
		CreateNestedTypeDefCommand(ITypeNode ownerType, TypeDefOptions options) {
			this.ownerType = ownerType;

			var modNode = ownerType.GetModuleNode();
			Debug.Assert(modNode != null);
			if (modNode == null)
				throw new InvalidOperationException();
			this.nestedType = ownerType.Create(options.CreateTypeDef(modNode.DnSpyFile.ModuleDef));
		}
Example #9
0
		CreateEventDefCommand(ITypeNode ownerNode, EventDefOptions options) {
			this.ownerNode = ownerNode;
			this.eventNode = ownerNode.Create(options.CreateEventDef(ownerNode.TypeDef.Module));
		}
Example #10
0
		CreatePropertyDefCommand(ITypeNode ownerNode, PropertyDefOptions options) {
			this.ownerNode = ownerNode;
			this.propNode = ownerNode.Create(options.CreatePropertyDef(ownerNode.TypeDef.Module));
		}
Example #11
0
		static ITypeNode GetOrCreateNestedTypeTreeNode(ITypeNode typeNode, TypeDef nestedType) {
			Debug.Assert(nestedType != null && nestedType.DeclaringType == typeNode.TypeDef);
			typeNode.TreeNode.EnsureChildrenLoaded();
			var childTypeNode = typeNode.TreeNode.DataChildren.OfType<ITypeNode>().FirstOrDefault(a => a.TypeDef == nestedType);
			if (childTypeNode != null)
				return childTypeNode;
			childTypeNode = typeNode.Create(nestedType);
			typeNode.TreeNode.AddChild(childTypeNode.TreeNode);
			return childTypeNode;
		}
Example #12
0
		CreateMethodDefCommand(ITypeNode ownerNode, MethodDefOptions options) {
			this.ownerNode = ownerNode;
			this.methodNode = ownerNode.Create(options.CreateMethodDef(ownerNode.TypeDef.Module));
		}