Ejemplo n.º 1
0
        public void prepareRenameTypes(TypeRenamerState state)
        {
            var checker = NameChecker;

            if (newNamespace == null && oldNamespace != "") {
                if (!checker.isValidNamespaceName(oldNamespace)) {
                    newNamespace = state.createNamespace(oldNamespace);
                }
            }

            string origClassName = null;
            if (isWinFormsClass())
                origClassName = findWindowsFormsClassName(type);
            if (oldFullName != "<Module>" && !checker.isValidTypeName(oldName)) {
                if (origClassName != null && checker.isValidTypeName(origClassName))
                    rename(state.getTypeName(oldName, origClassName));
                else {
                    ITypeNameCreator nameCreator = type.isGlobalType() ?
                                            state.globalTypeNameCreator :
                                            state.internalTypeNameCreator;
                    string newBaseType = null;
                    TypeInfo baseInfo = getBase();
                    if (baseInfo != null && baseInfo.renamed)
                        newBaseType = baseInfo.newName;
                    rename(nameCreator.create(type.TypeDefinition, newBaseType));
                }
            }

            prepareRenameGenericParams(type.GenericParams, checker);
        }