示例#1
0
    public string GetMemberType(MemberTypeKind kind = MemberTypeKind.Accessor)
    {
        string typeName;
        if ((Flags & MemberDefFlags.RecordRef) != 0)
        {
            if (TypeName is String[])
            {
                typeName = (kind == MemberTypeKind.WriterField) ? "MetadataRecord" : "Handle";
            }
            else
            {
                typeName = (kind == MemberTypeKind.WriterField) ? 
                    (TypeName != null ? (string)TypeName : "MetadataRecord"): $"{ TypeName}Handle";
            }
        }
        else
        {
            typeName = (string)TypeName;
        }
        if ((Flags & (MemberDefFlags.Array | MemberDefFlags.List | MemberDefFlags.Map)) != 0)
        {
            if (kind == MemberTypeKind.WriterField)
            {
                if ((Flags & (MemberDefFlags.List | MemberDefFlags.Map)) != 0)
                    return $"List<{typeName}>";
                else
                    return $"{typeName}[]";
            }

            return $"{typeName}Collection";
        }
        return typeName;
    }
示例#2
0
    public string GetMemberType(MemberTypeKind kind = MemberTypeKind.Accessor)
    {
        string typeName;
        if ((Flags & MemberDefFlags.RecordRef) != 0)
        {
            if (TypeName is String[])
            {
                typeName = (kind == MemberTypeKind.WriterField) ? "MetadataRecord" : "Handle";
            }
            else
            {
                typeName = (kind == MemberTypeKind.WriterField) ? 
                    (TypeName != null ? (string)TypeName : "MetadataRecord"): $"{TypeName}Handle";
            }
        }
        else
        {
            typeName = (string)TypeName;
        }
        if ((Flags & MemberDefFlags.Collection) != 0)
        {
            if (kind == MemberTypeKind.WriterField)
            {
                if ((Flags & (MemberDefFlags.List | MemberDefFlags.Map)) != 0)
                    return $"List<{typeName}>";
                else
                    return $"{typeName}[]";
            }

            return $"{typeName}Collection";
        }
        return typeName;
    }
示例#3
0
    public string GetMemberType(MemberTypeKind kind = MemberTypeKind.Accessor)
    {
        string typeName;

        if ((Flags & MemberDefFlags.RecordRef) != 0)
        {
            if (TypeName is String[])
            {
                typeName = (kind == MemberTypeKind.WriterField) ? "MetadataRecord" : "Handle";
            }
            else
            {
                typeName = (kind == MemberTypeKind.WriterField) ?
                           (TypeName != null ? (string)TypeName : "MetadataRecord"): $"{ TypeName}Handle";
            }
        }
        else
        {
            typeName = (string)TypeName;
        }
        if ((Flags & (MemberDefFlags.Array | MemberDefFlags.List | MemberDefFlags.Map)) != 0)
        {
            if (kind == MemberTypeKind.WriterField)
            {
                if ((Flags & (MemberDefFlags.List | MemberDefFlags.Map)) != 0)
                {
                    return($"List<{typeName}>");
                }
            }

            return((kind != MemberTypeKind.Accessor) ? $"{typeName}[]" : $"IEnumerable<{typeName}>");
        }
        return(typeName);
    }