/// <summary> /// Constructor of ArrayType /// </summary> public ArrayType(TypeExpression type) { this.arrayType = type; this.fullName = type.FullName + "[]"; string introspectiveName = type.GetType().FullName + "[]"; this.BCLType = new BCLClassType(this.fullName, Type.GetType(introspectiveName)); }
/// <summary> /// Creates, based on introspection, the base class of the user type and the list /// of interfaces implemented /// </summary> public void createBaseClassAndInterfacesTree() { // * Creates the base class tree System.Type baseClass = this.reflectionType.BaseType; if (baseClass != null) { BCLClassType BCLBaseClass = new BCLClassType(baseClass.FullName, baseClass); userType.AddBaseClass(BCLBaseClass, new Location(null, 0, 0)); } // * Creates the intefaces tree Type[] interfaces = this.reflectionType.GetInterfaces(); foreach (Type interfaze in interfaces) { BCLInterfaceType baseInterface = new BCLInterfaceType(interfaze.FullName, interfaze); userType.AddBaseInterface(baseInterface, new Location(null, 0, 0)); } }