private void DefineTypeRecursive(Cci.INamedTypeDefinition typeDef, TypeBuilder containingTypeBuilder) { var builder = DefineType(typeDef, containingTypeBuilder); foreach (var nestedType in typeDef.GetNestedTypes(_context)) { // TODO (tomat, Dev12): Do not emit types of mapped fields as Ref.Emit defines its own. // We should remove this when Ref.Emit is fixed. if (nestedType.Name.StartsWith("__StaticArrayInitTypeSize=", StringComparison.Ordinal)) { continue; } DefineTypeRecursive(nestedType, containingTypeBuilder: builder); } }