internal AssemblyFieldDefinition(AssemblyTypeDefinition declaringType, FieldDefinition definition)
 {
     _declaringType = declaringType;
     _definition = definition;
 }
 internal AssemblyPropertyDefinition(AssemblyTypeDefinition declaringType, PropertyDefinition definition)
 {
     _declaringType = declaringType;
     _definition = definition;
 }
 internal AssemblyOperatorDefinition(AssemblyTypeDefinition declaringType, MethodDefinition definition, OperatorType operatorType)
 {
     _declaringType = declaringType;
     _definition = definition;
     OperatorType = operatorType;
 }
 internal AssemblyEventDefinition(AssemblyTypeDefinition declaringType, EventDefinition definition)
 {
     _declaringType = declaringType;
     _definition = definition;
 }
 internal void AddTypeDefinition(AssemblyTypeDefinition definition)
 {
     _types.Add(definition);
 }
        public override IEnumerable<Symbols.TypeDefinition> GetNestedTypes()
        {
            if (_nestedTypes == null)
            {
                if (_definition.NestedClasses.Count == 0)
                    return _nestedTypes = new AssemblyTypeDefinition[0];

                _nestedTypes = new AssemblyTypeDefinition[_definition.NestedClasses.Count];
                for (int i = 0; i < _nestedTypes.Length; i++)
                    _nestedTypes[i] = new AssemblyTypeDefinition(this, _definition.NestedClasses[i].Class);
            }

            return _nestedTypes;
        }
 internal AssemblyConstructorDefinition(AssemblyTypeDefinition declaringType, MethodDefinition definition)
 {
     _declaringType = declaringType;
     _definition = definition;
 }
Example #8
0
 private void EnsureNamespacesInitialized()
 {
     if (_namespaceDefinitions == null)
     {
         _namespaceDefinitions = new List<AssemblyNamespaceDefinition>();
         foreach (var definition in _typeTable)
         {
             if (definition.DeclaringType == null && definition.IsPublic)
             {
                 var namespaceDefinition = GetNamespaceDefinition(definition.Namespace);
                 var typeDefinition = new AssemblyTypeDefinition(namespaceDefinition, definition);
                 namespaceDefinition.AddTypeDefinition(typeDefinition);
             }
         }
     }
 }