Example #1
0
        public static CGFFieldSymbol Parse(CGFParserReporter reporter, Microsoft.CodeAnalysis.IFieldSymbol fieldSymbol)
        {
            CGFFieldSymbol cgfFieldSymbol = new CGFFieldSymbol(fieldSymbol);

            cgfFieldSymbol.m_AttributeDataList = CGFAttributeDataList.Parse(reporter, fieldSymbol.GetAttributes());

            return(cgfFieldSymbol);
        }
Example #2
0
        CGFFieldSymbol(Microsoft.CodeAnalysis.IFieldSymbol fieldSymbol)
        {
            m_FieldSymbol = fieldSymbol;

            Microsoft.CodeAnalysis.ITypeSymbol typeSymbol = m_FieldSymbol.Type;
            if (typeSymbol.TypeKind == Microsoft.CodeAnalysis.TypeKind.Array)
            {
                Microsoft.CodeAnalysis.IArrayTypeSymbol arrayTypeSymbol = fieldSymbol.Type as Microsoft.CodeAnalysis.IArrayTypeSymbol;
                TypeName = arrayTypeSymbol.ElementType.Name + "[]";
                UnderlyingSpecialType = arrayTypeSymbol.ElementType.SpecialType;
                IsSystemType          = arrayTypeSymbol.ElementType.SpecialType != Microsoft.CodeAnalysis.SpecialType.None;
            }
            else
            {
                TypeName = typeSymbol.Name;
                UnderlyingSpecialType = typeSymbol.SpecialType;
                IsSystemType          = typeSymbol.SpecialType != Microsoft.CodeAnalysis.SpecialType.None;
            }
        }