예제 #1
0
        private SDField GetParsedField(IFieldSymbol field)
        {
            var syntaxReference = field.DeclaringSyntaxReferences.Any() ? field.DeclaringSyntaxReferences.Single() : null;
            var sdField         = new SDField(field.GetIdentifier())
            {
                Name          = field.Name,
                DeclaringType = _typeRefParser.GetParsedTypeReference(field.ContainingType),
                Accessibility = field.DeclaredAccessibility.ToString().ToLower(),
                ReturnType    = _typeRefParser.GetParsedTypeReference(field.Type),
                ConstantValue = field.ConstantValue != null?field.ConstantValue.ToString() : string.Empty,
                                    IsConst        = field.IsConst,
                                    IsReadonly     = field.IsReadOnly,
                                    Documentations = DocumentationParser.ParseDocumentation(field),
                                    Region         = syntaxReference != null ? new SDRegion
                {
                    Start     = syntaxReference.Span.Start,
                    End       = syntaxReference.Span.End,
                    StartLine = syntaxReference.SyntaxTree.GetLineSpan(syntaxReference.Span).StartLinePosition.Line + 1,
                    EndLine   = syntaxReference.SyntaxTree.GetLineSpan(syntaxReference.Span).EndLinePosition.Line + 1,
                    FilePath  = syntaxReference.SyntaxTree.FilePath,
                    Filename  = Path.GetFileName(syntaxReference.SyntaxTree.FilePath)
                }

                  : null
            };

            ParserOptions.SDRepository.AddMember(sdField);
            return(sdField);
        }
예제 #2
0
 public FieldViewModel(SDField field, TypeViewModel parent, ObservableCollection <string> excludedIdentifiers)
     : base(field.Identifier, parent, excludedIdentifiers)
 {
     Text          = field.Name;
     Accessibility = field.Accessibility;
     Image         = string.Format("pack://application:,,,/SharpDox.Resources;component/Icons/Field_{0}.png", Accessibility);
 }
예제 #3
0
 public FieldViewModel(SDField field, TypeViewModel parent, ICoreConfigSection sharpDoxConfig)
     : base(field.Identifier, parent, sharpDoxConfig)
 {
     Text          = field.Name;
     Accessibility = field.Accessibility;
     Image         = string.Format("pack://application:,,,/SharpDox.GUI;component/Resources/Icons/Field_{0}.png", Accessibility);
 }
예제 #4
0
        private SDField GetParsedField(IField field)
        {
            var sdField = new SDField(field.GetIdentifier())
            {
                Name          = field.Name,
                DeclaringType = _typeParser.GetParsedType(field.DeclaringType),
                Accessibility = field.Accessibility.ToString().ToLower(),
                ReturnType    = _typeParser.GetParsedType(field.ReturnType),
                Documentation = _documentationParser.ParseDocumentation(field)
            };

            _repository.AddMember(sdField);
            return(sdField);
        }
예제 #5
0
        private SDField GetParsedField(IFieldSymbol field)
        {
            var sdField = new SDField(field.GetIdentifier())
            {
                Name          = field.Name,
                DeclaringType = _typeRefParser.GetParsedTypeReference(field.ContainingType),
                Accessibility = field.DeclaredAccessibility.ToString().ToLower(),
                ReturnType    = _typeRefParser.GetParsedTypeReference(field.Type),
                ConstantValue = field.ConstantValue != null?field.ConstantValue.ToString() : string.Empty,
                                    IsConst        = field.IsConst,
                                    IsReadonly     = field.IsReadOnly,
                                    Documentations = DocumentationParser.ParseDocumentation(field)
            };

            ParserOptions.SDRepository.AddMember(sdField);
            return(sdField);
        }
예제 #6
0
        private SDField GetParsedField(IField field)
        {
            var sdField = new SDField(field.GetIdentifier())
            {
                Name          = field.Name,
                DeclaringType = _typeParser.GetParsedType(field.DeclaringType),
                Accessibility = field.Accessibility.ToString().ToLower(),
                ReturnType    = _typeParser.GetParsedType(field.ReturnType),
                ConstantValue = field.ConstantValue != null?field.ConstantValue.ToString() : string.Empty,
                                    IsConst        = field.IsConst,
                                    IsReadonly     = field.IsReadOnly,
                                    Documentations = _documentationParser.ParseDocumentation(field)
            };

            _repository.AddMember(sdField);
            return(sdField);
        }