IsUnnamed() 공개 정적인 메소드

public static IsUnnamed ( IDiaSymbol symbol ) : bool
symbol IDiaSymbol
리턴 bool
예제 #1
0
파일: Translator.cs 프로젝트: YSheldon/cdef
        public CType Translate(IDiaSymbol sym)
        {
            switch ((SymTagEnum)sym.symTag)
            {
            case SymTagEnum.SymTagBaseType:
                return(TranslateBaseType(sym));

            case SymTagEnum.SymTagPointerType:
                return(TranslatePtr(sym));

            case SymTagEnum.SymTagArrayType:
                return(TranslateArr(sym));

            case SymTagEnum.SymTagFunctionType:
                return(TranslateFunc(sym));

            case SymTagEnum.SymTagUDT:
                return(PdbSymbol.IsUnnamed(sym)
                        ? TranslateUnnamedUdt(sym)
                        : TranslateTypeRef(sym));

            case SymTagEnum.SymTagEnum:
                return(PdbSymbol.IsUnnamed(sym)
                        ? TranslateEnum(sym)
                        : TranslateTypeRef(sym));

            default:
                throw new NotImplementedException(((SymTagEnum)sym.symTag).ToString());
            }
        }
예제 #2
0
        private void LoadEnums(IDiaSymbol global)
        {
            IDiaEnumSymbols symbols;

            global.findChildren(SymTagEnum.SymTagEnum, null, 0, out symbols);
            foreach (IDiaSymbol symbol in symbols)
            {
                if (!PdbSymbol.IsUnnamed(symbol))
                {
                    AddSymbol(symbol, PdbSymbolTypes.Enum);
                }
            }
        }
예제 #3
0
        private void LoadUdts(IDiaSymbol global)
        {
            IDiaEnumSymbols symbols;

            global.findChildren(SymTagEnum.SymTagUDT, null, 0, out symbols);
            foreach (IDiaSymbol symbol in symbols)
            {
                if (!PdbSymbol.IsUnnamed(symbol) && !IsUdtEmpty(symbol))
                {
                    switch ((UdtKindEnum)symbol.udtKind)
                    {
                    case UdtKindEnum.UdtStruct:
                        AddSymbol(symbol, PdbSymbolTypes.Struct);
                        break;

                    case UdtKindEnum.UdtUnion:
                        AddSymbol(symbol, PdbSymbolTypes.Union);
                        break;
                    }
                }
            }
        }