public ImplicitNullabilityConfigurationEvaluator(
     ISettingsStore settingsStore,
     ISettingsOptimization settingsOptimization)
 {
     _settingsStore        = settingsStore;
     _settingsOptimization = settingsOptimization;
 }
Example #2
0
 public PsiCodeFormatter(Lifetime lifetime, PsiLanguage language, ISettingsStore settingsStore, IViewable <IPsiCodeFormatterExtension> extensions, ISettingsOptimization settingsOptimization)
     : base(settingsStore)
 {
     myLanguage             = language;
     myExtensions           = extensions.ToLiveEnumerable(lifetime);
     mySettingsOptimization = settingsOptimization;
 }
Example #3
0
        public UnityNUnitServiceProvider(ISolution solution,
                                         IPsiModules psiModules,
                                         ISymbolCache symbolCache,
                                         IUnitTestElementIdFactory idFactory,
                                         IUnitTestElementManager elementManager,
                                         NUnitTestProvider provider,
                                         IUnitTestingSettings settings,
                                         ISettingsStore settingsStore,
                                         ISettingsOptimization settingsOptimization,
                                         ISettingsCache settingsCache,
                                         UnitTestingCachingService cachingService,
                                         INUnitTestParametersProvider testParametersProvider,
                                         UnityEditorProtocol editorProtocol,
                                         RunViaUnityEditorStrategy runViaUnityEditorStrategy,
                                         UnitySolutionTracker unitySolutionTracker)
            : base(solution, psiModules, symbolCache, idFactory, elementManager, provider, settings, settingsStore,
                   settingsOptimization, settingsCache, cachingService, testParametersProvider)
        {
            if (solution.GetData(ProjectModelExtensions.ProtocolSolutionKey) == null)
            {
                return;
            }

            myRdUnityModel         = solution.GetProtocolSolution().GetRdUnityModel();
            myEditorProtocol       = editorProtocol;
            myUnityEditorStrategy  = runViaUnityEditorStrategy;
            myUnitySolutionTracker = unitySolutionTracker;
        }
Example #4
0
        public UnityNUnitServiceProvider(ISolution solution,
                                         IPsiModules psiModules,
                                         ISymbolCache symbolCache,
                                         IUnitTestElementIdFactory idFactory,
                                         IUnitTestElementManager elementManager,
                                         NUnitTestProvider provider,
                                         IUnitTestingSettings settings,
                                         ISettingsStore settingsStore,
                                         ISettingsOptimization settingsOptimization,
                                         ISettingsCache settingsCache,
                                         UnitTestingCachingService cachingService,
                                         INUnitTestParametersProvider testParametersProvider,
                                         FrontendBackendHost frontendBackendHost,
                                         BackendUnityHost backendUnityHost,
                                         RunViaUnityEditorStrategy runViaUnityEditorStrategy,
                                         UnitySolutionTracker unitySolutionTracker)
            : base(solution, psiModules, symbolCache, idFactory, elementManager, provider, settings, settingsStore,
                   settingsOptimization, settingsCache, cachingService, testParametersProvider)
        {
            // Only in tests
            if (!frontendBackendHost.IsAvailable)
            {
                return;
            }

            myFrontendBackendModel = frontendBackendHost.Model.NotNull("frontendBackendHost.Model != null");
            myBackendUnityHost     = backendUnityHost;
            myUnityEditorStrategy  = runViaUnityEditorStrategy;
            myUnitySolutionTracker = unitySolutionTracker;
        }
 public PsiCodeFormatter(Lifetime lifetime, PsiLanguage language, ISettingsStore settingsStore, IViewable<IPsiCodeFormatterExtension> extensions, ISettingsOptimization settingsOptimization)
   : base(settingsStore)
 {
   myLanguage = language;
   myExtensions = extensions.ToLiveEnumerable(lifetime);
   mySettingsOptimization = settingsOptimization;
 }
Example #6
0
 public SettingsStore(RSISettingsStore settingsStore,
                      DataContexts dataContexts,
                      ISettingsOptimization optimization)
 {
     _settingsStore = settingsStore;
     _dataContexts  = dataContexts;
     _optimization  = optimization;
 }
 public AngularJsCodeFormatter(Lifetime lifetime, PsiLanguageType language, ISettingsStore settingsStore,
                               ISettingsOptimization settingsOptimization,
                               JavaScriptFormattingInfoProviderBase formattingProvider,
                               JavaScriptIndentingInfoProviderBase indentingProvider,
                               IViewable<IJavaScriptCodeFormatterExtension> extensions)
     : base(lifetime, language, settingsStore, settingsOptimization,
            formattingProvider, indentingProvider, extensions)
 {
 }
Example #8
0
 public AngularJsCodeFormatter(Lifetime lifetime, PsiLanguageType language, ISettingsStore settingsStore,
                               ISettingsOptimization settingsOptimization,
                               JavaScriptFormattingInfoProviderBase formattingProvider,
                               JavaScriptIndentingInfoProviderBase indentingProvider,
                               IViewable <IJavaScriptCodeFormatterExtension> extensions)
     : base(lifetime, language, settingsStore, settingsOptimization,
            formattingProvider, indentingProvider, extensions)
 {
 }
Example #9
0
 public XmlDocInspectionsSettingsCache(
     Lifetime lifetime,
     SettingsCacheManager settingsCacheManager,
     ISettingsOptimization settingsOptimization,
     ISettingsStore settingsStore)
 {
     _lifetime             = lifetime;
     _settingsCacheManager = settingsCacheManager;
     _settingsOptimization = settingsOptimization;
     _settingsKey          = settingsStore.Schema.GetKey <XmlDocInspectionsSettings>();
 }
 public UnityNUnitServiceProvider(ISolution solution, IPsiModules psiModules, ISymbolCache symbolCache,
                                  IUnitTestElementIdFactory idFactory, IUnitTestElementManager elementManager, NUnitTestProvider provider,
                                  ISettingsStore settingsStore, ISettingsOptimization settingsOptimization, ISettingsCache settingsCache,
                                  UnitTestingCachingService cachingService, IDotNetCoreSdkResolver dotNetCoreSdkResolver,
                                  UnityEditorProtocol unityEditorProtocol,
                                  RunViaUnityEditorStrategy runViaUnityEditorStrategy,
                                  NUnitOutOfProcessUnitTestRunStrategy nUnitOutOfProcessUnitTestRunStrategy)
     : base(solution, psiModules, symbolCache, idFactory, elementManager, provider, settingsStore,
            settingsOptimization, settingsCache, cachingService, dotNetCoreSdkResolver, nUnitOutOfProcessUnitTestRunStrategy)
 {
     myUnityEditorProtocol = unityEditorProtocol;
     myUnityEditorStrategy = runViaUnityEditorStrategy;
 }
Example #11
0
        public UnityNUnitServiceProvider(ISolution solution, IPsiModules psiModules, ISymbolCache symbolCache,
                                         IUnitTestElementIdFactory idFactory, IUnitTestElementManager elementManager, NUnitTestProvider provider,
                                         ISettingsStore settingsStore, ISettingsOptimization settingsOptimization, ISettingsCache settingsCache,
                                         UnitTestingCachingService cachingService, IDotNetCoreSdkResolver dotNetCoreSdkResolver,
                                         UnityEditorProtocol editorProtocol,
                                         RunViaUnityEditorStrategy runViaUnityEditorStrategy,
                                         NUnitOutOfProcessUnitTestRunStrategy nUnitOutOfProcessUnitTestRunStrategy)
            : base(solution, psiModules, symbolCache, idFactory, elementManager, provider, settingsStore,
                   settingsOptimization, settingsCache, cachingService, dotNetCoreSdkResolver, nUnitOutOfProcessUnitTestRunStrategy)
        {
            if (solution.GetData(ProjectModelExtensions.ProtocolSolutionKey) == null)
            {
                return;
            }

            myRdUnityModel = solution.GetProtocolSolution().GetRdUnityModel();

            myEditorModel         = editorProtocol.UnityModel;
            myUnityEditorStrategy = runViaUnityEditorStrategy;
        }
Example #12
0
        public ImplicitNullabilityOptionsPage(
            Lifetime lifetime,
            OptionsSettingsSmartContext optionsSettingsSmartContext,
            ISettingsOptimization settingsOptimization,
            Clipboard clipboard)
            : base(lifetime, optionsSettingsSmartContext)
        {
            _settingsOptimization = settingsOptimization;
            _clipboard            = clipboard;

            var enabledOption = AddBoolOption((ImplicitNullabilitySettings s) => s.Enabled, "Enabled");

            // Note: Text duplicated in README
            SetIndent(AddText(
                          "With enabled Implicit Nullability, reference types are by default implicitly [NotNull] for " +
                          "specific, configurable elements (see below). " +
                          "Their nullability can be overridden with an explicit [CanBeNull] attribute. " +
                          "Optional method parameters with a null default value are implicitly [CanBeNull]."), 1);
            AddEmptyLine();
            SetIndent(AddText(
                          "Code elements which should be affected by Implicit Nullability can be configured in two ways."), 1);
            AddEmptyLine();
            SetIndent(AddText(
                          "1. Recommended for application authors: Using the following settings."), 1);


            AddNullabilityBoolOption(
                s => s.EnableInputParameters,
                "Input parameters of methods, delegates, and indexers",
                additionalText: null,
                parentOption: enabledOption,
                indent: 2);

            AddNullabilityBoolOption(
                s => s.EnableRefParameters,
                "Ref parameters of methods and delegates",
                additionalText: null,
                parentOption: enabledOption,
                indent: 2);

            AddNullabilityBoolOption(
                s => s.EnableOutParametersAndResult,
                "Return values and out parameters of methods and delegates",
                additionalText: null,
                parentOption: enabledOption,
                indent: 2);

            var enableFieldsOption = AddNullabilityBoolOption(
                s => s.EnableFields,
                "Fields",
                additionalText: null,
                parentOption: enabledOption,
                indent: 2);

            AddNullabilityBoolOption(
                s => s.FieldsRestrictToReadonly,
                new RichText("Restrict to ") + new RichText("readonly", Italic) +
                new RichText(" fields (because ") + new RichText("readonly", Italic) + new RichText(" fields can be guarded "),
                new RichText("by invariants / constructor checks)"),
                parentOption: enableFieldsOption,
                indent: 3);

            AddNullabilityBoolOption(
                s => s.FieldsRestrictToReferenceTypes,
                new RichText("Restrict to fields contained in reference types (because due to the implicit default "),
                new RichText("constructor ") + new RichText("struct", Italic) +
                new RichText("s cannot guarantee non-null initialized fields)"),
                parentOption: enableFieldsOption,
                indent: 3);

            var enablePropertiesOption = AddNullabilityBoolOption(
                s => s.EnableProperties,
                "Properties",
                additionalText: null,
                parentOption: enabledOption,
                indent: 2);

            AddNullabilityBoolOption(
                s => s.PropertiesRestrictToGetterOnly,
                "Restrict to getter-only properties (including C# 6+ readonly auto-properties)",
                additionalText: null,
                parentOption: enablePropertiesOption,
                indent: 3);

            AddNullabilityBoolOption(
                s => s.PropertiesRestrictToReferenceTypes,
                new RichText("Restrict to properties contained in reference types (because due to the implicit default "),
                new RichText("constructor ") + new RichText("struct", Italic) +
                new RichText("s cannot guarantee non-null initialized auto-properties)"),
                parentOption: enablePropertiesOption,
                indent: 3);

            AddText("");
            AddNullabilityBoolOption(
                s => s.GeneratedCode,
                GeneratedCodeOptions.Exclude,
                GeneratedCodeOptions.Include,
                new RichText("Exclude generated code (decorated with ") + new RichText("[GeneratedCode]", Italic),
                new RichText(" attribute or configured on the \"Code Inspection | Generated Code\" options page)"),
                parentOption: enabledOption,
                indent: 2);

            AddEmptyLine();
            SetIndent(AddRichText(
                          new RichText("2. Recommended for library authors: By defining ") + new RichText("[AssemblyMetadata]", Italic) +
                          new RichText(" attributes in all concerned assemblies. " +
                                       "This has the advantage of the Implicit Nullability configuration also getting compiled into the assemblies.")),
                      indent: 1);

            var copyButtonText = "Copy [AssemblyMetadata] attributes to clipboard (corresponding to the options above)";
            var copyButton     = AddButton(copyButtonText, new DelegateCommand(CopyAssemblyAttributeCode));

#if RIDER
            AddEmptyLine();
            SetIndent(AddText("TODO: Add 'Copy [AssemblyMetadata] attributes to clipboard' button here"), 1); // TODO UB RiderSupport Button
            AddEmptyLine();
#endif
            SetIndent(copyButton, 2);
            enabledOption.CheckedProperty.FlowInto(myLifetime, copyButton.GetIsEnabledProperty());

            SetIndent(AddRichText(
                          new RichText("Implicit Nullability normally ignores referenced assemblies. " +
                                       "It can take referenced libraries into account only if they contain embedded ") +
                          new RichText("[AssemblyMetadata]", Italic) + new RichText(" -based configuration.")),
                      indent: 1);
            AddEmptyLine();
            SetIndent(AddRichText(
                          new RichText("The options in ") + new RichText("[AssemblyMetadata]", Italic) +
                          new RichText(" attributes override the options selected above.")),
                      indent: 1);

            AddEmptyLine();
            AddRichText(
                new RichText("Warning: ", Bold) + new RichText("After changing these settings respectively changing ") +
                new RichText("the [AssemblyMetadata] attribute value, cleaning the solution cache (see \"General\" options page) " +
                             "is necessary to update already analyzed code."));

            AddEmptyLine();
            AddBoolOption(
                (ImplicitNullabilitySettings s) => s.EnableTypeHighlighting,
                "Enable type highlighting of explicit or implicit [NotNull] elements (to adapt the color, look ",
                "for \"Implicit Nullability\" in Visual Studio's \"Fonts and Colors\" options)",
                indent: 0);
        }
 public SecretCodeFormatter(
     Lifetime lifetime, NTriplesLanguage language, ISettingsStore settingsStore, ISettingsOptimization settingsOptimization)
     : base(settingsStore)
 {
     this.myLanguage = language;
 }
Example #14
0
 public SecretCodeFormatter(
     Lifetime lifetime, NTriplesLanguage language, ISettingsStore settingsStore, ISettingsOptimization settingsOptimization)
     : base(settingsStore)
 {
     this.myLanguage = language;
 }
Example #15
0
        public NameSuffixLinkedTypesProvider(ISolution solution, ISettingsStore settingsStore, ISettingsOptimization settingsOptimization)
        {
            var contextBoundSettingsStore = settingsStore.BindToContextTransient(ContextRange.Smart(solution.ToDataContext()));
            var settings = contextBoundSettingsStore.GetKey <TestLinkerSettings>(settingsOptimization);

            _namingStyle    = settings.NamingStyle;
            _namingSuffixes = settings.NamingSuffixes.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
                              .Select(x => Pair.Of(x, x.Length))
                              .ToList();
        }
 public Reader(ISettingsStore settingsStore, ISettingsOptimization settingsOptimization)
 {
     SettingsOptimization = settingsOptimization;
     KeyExposed           = settingsStore.Schema.GetKey <MspecProviderSettings>();
 }
 public PsiCodeFormatter(Lifetime lifetime, PsiLanguage language,
                         ISettingsStore settingsStore, ISettingsOptimization settingsOptimization)
     : base(settingsStore)
 {
     myLanguage = language;
 }
Example #18
0
 public N3CodeFormatter(Lifetime lifetime, N3Language language, ISettingsStore settingsStore, ISettingsOptimization settingsOptimization)
     : base(settingsStore)
 {
     this.myLanguage = language;
 }
Example #19
0
 public T4CodeFormatter([NotNull] IFormatterDebugInfoLoggersProvider formatterLoggerProvider, [NotNull] ISettingsOptimization settingsOptimization)
     : base(formatterLoggerProvider, settingsOptimization)
 {
 }
Example #20
0
        public TypeofAttributeLinkedTypesProvider(ISolution solution, ISettingsStore settingsStore, ISettingsOptimization settingsOptimization)
        {
            var contextBoundSettingsStore = settingsStore.BindToContextTransient(ContextRange.Smart(solution.ToDataContext()));
            var settings = contextBoundSettingsStore.GetKey <TestLinkerSettings>(settingsOptimization);

            var attributeNameLong = settings.TypeofAttributeName;

            if (!attributeNameLong.EndsWith("Attribute"))
            {
                attributeNameLong += "Attribute";
            }

            _attributeNameLong  = attributeNameLong;
            _attributeNameShort = attributeNameLong.Substring(startIndex: 0, length: attributeNameLong.Length - "Attribute".Length);
        }
 public ShaderLabDummyFormatter(ISolution solution, CachingLexerService cachingLexerService, DocumentToProjectFileMappingStorage projectFileMappingStorage, IGlobalFormatSettingsService formatSettings,
                                ISettingsStore settingsStore, ISettingsOptimization settingsOptimization) : base(solution, cachingLexerService, projectFileMappingStorage, formatSettings, settingsStore, settingsOptimization)
 {
 }
 public N3CodeFormatter(Lifetime lifetime, N3Language language, ISettingsStore settingsStore, ISettingsOptimization settingsOptimization)
     : base(settingsStore)
 {
     this.myLanguage = language;
 }