diff --git a/Build/Common.Build.CSharp.settings b/Build/Common.Build.CSharp.settings index e1786c645..a0c3b736c 100644 --- a/Build/Common.Build.CSharp.settings +++ b/Build/Common.Build.CSharp.settings @@ -29,14 +29,10 @@ true TRACE;$(DefineConstants) - - - $(DefineConstants);FEATURE_AZURE_REMOTE_DEBUG - - $(DefineConstants);DEV15;DEV15_OR_LATER;DEV14_OR_LATER;DEV12_OR_LATER;DEV11_OR_LATER DEV15;DEV15_OR_LATER;DEV14_OR_LATER;DEV12_OR_LATER;DEV11_OR_LATER + $(DefineConstants);DEV15;DEV15_OR_LATER;DEV14_OR_LATER;DEV12_OR_LATER;DEV11_OR_LATER 15.0.0.0 Core @@ -47,27 +43,6 @@ 14.0.0.0 Core - - - $(DefineConstants);DEV12;DEV12_OR_LATER;DEV11_OR_LATER - DEV12;DEV12_OR_LATER;DEV11_OR_LATER - 12.0.0.0 - v12.0 - - - - $(DefineConstants);DEV11;DEV11_OR_LATER - DEV11;DEV11_OR_LATER - 4.0.0.0 - v4.0 - - - - $(DefineConstants);DEV10 - DEV10 - 4.0.0.0 - v4.0 - false diff --git a/Build/Common.Build.Cpp.settings b/Build/Common.Build.Cpp.settings deleted file mode 100644 index b32ed474a..000000000 --- a/Build/Common.Build.Cpp.settings +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - - - - - - C++ - Win32 - - - - DEV15;DEV15_OR_LATER;DEV14_OR_LATER;DEV12_OR_LATER;DEV11_OR_LATER;%(PreprocessorDefinitions) - - - - - - DEV14;DEV14_OR_LATER;DEV12_OR_LATER;DEV11_OR_LATER;%(PreprocessorDefinitions) - - - - - - DEV12;DEV12_OR_LATER;DEV11_OR_LATER;%(PreprocessorDefinitions) - - - - - - DEV11;DEV11_OR_LATER;%(PreprocessorDefinitions) - - - - - - DEV10;%(PreprocessorDefinitions) - - - - - - Level3 - Use - $(TreatWarningsAsErrors) - - - true - - - - - - Disabled - _DEBUG;%(PreprocessorDefinitions) - - - - - - - MaxSpeed - true - true - NDEBUG;%(PreprocessorDefinitions) - - - - true - true - - - - - - WIN32;%(PreprocessorDefinitions) - - - - - - WIN64;%(PreprocessorDefinitions) - - - - diff --git a/Build/Common.Build.settings b/Build/Common.Build.settings index 740d491ee..1ea5af1b5 100644 --- a/Build/Common.Build.settings +++ b/Build/Common.Build.settings @@ -25,12 +25,9 @@ true - 10.0 + 14.0 15.0 - 14.0 - 12.0 - 11.0 - 10.0 + 14.0 false v4.6 @@ -89,7 +86,6 @@ - prompt 4 @@ -116,12 +112,6 @@ $([System.Double]::Parse($(VSTarget))) <_VSUpdateVersion Condition="$(VSUpdateVersion)=='' and $(VisualStudioVersion)!='10.0'">$([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv\vs\Servicing\$(VSTarget)\devenv', 'UpdateVersion', null, RegistryView.Registry32)) $([System.Int32]::Parse($(_VSUpdateVersion.Substring($([MSBuild]::Add(1, $(_VSUpdateVersion.LastIndexOf(`.`)))))))) - - - $(ReleaseBuild) - - - true @@ -143,7 +133,6 @@ - diff --git a/Build/default.12.0Exp.testsettings b/Build/default.12.0Exp.testsettings deleted file mode 100644 index 71d8b96bc..000000000 --- a/Build/default.12.0Exp.testsettings +++ /dev/null @@ -1,23 +0,0 @@ - - - Local test runs with the VS 2013 Experimental Hive - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Nodejs/Common/Microsoft.VisualStudio.Validation.14.1.144/Microsoft.VisualStudio.Validation.dll b/Nodejs/Common/Microsoft.VisualStudio.Validation.14.1.144/Microsoft.VisualStudio.Validation.dll new file mode 100644 index 000000000..8b3c79160 Binary files /dev/null and b/Nodejs/Common/Microsoft.VisualStudio.Validation.14.1.144/Microsoft.VisualStudio.Validation.dll differ diff --git a/Nodejs/Common/Microsoft.VisualStudio.Validation.14.1.144/Microsoft.VisualStudio.Validation.xml b/Nodejs/Common/Microsoft.VisualStudio.Validation.14.1.144/Microsoft.VisualStudio.Validation.xml new file mode 100644 index 000000000..b04fcbd9a --- /dev/null +++ b/Nodejs/Common/Microsoft.VisualStudio.Validation.14.1.144/Microsoft.VisualStudio.Validation.xml @@ -0,0 +1,532 @@ + + + + Microsoft.VisualStudio.Validation + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to '{0}' must contain at least one element.. + + + + + Looks up a localized string similar to '{0}' cannot be an empty string ("") or start with the null character.. + + + + + Looks up a localized string similar to '{0}' cannot contain a null (Nothing in Visual Basic) element.. + + + + + Looks up a localized string similar to The parameter "{0}" cannot consist entirely of white space characters.. + + + + + Looks up a localized string similar to An internal error occurred. Please contact Microsoft Product Support Services.. + + + + + Looks up a localized string similar to Cannot find an instance of the {0} service.. + + + + + Common runtime checks that throw exceptions upon failure. + + + Common runtime checks that throw exceptions upon failure. + + + + + Throws an exception if the given value is negative. + + The HRESULT corresponding to the desired exception. + If true, prevents ThrowExceptionForHR from returning an exception from a previous COM call and instead always use the HRESULT specified. + + No exception is thrown for S_FALSE. + + + + + Throws an if a condition is false. + + + + + Throws an if a condition is false. + + + + + Throws an if a condition is false. + + + + + Throws an if a condition is false. + + + + + Throws an if a condition is false. + + + + + Throws an . + + + Nothing. This method always throws. + The signature claims to return an exception to allow callers to throw this method + to satisfy C# execution path constraints. + + + + + Throws an if an object is disposed. + + + + + Throws an if a condition is false. + + + + + Throws an if a condition is false. + + + + + Common runtime checks that throw public error exceptions upon failure. + + + Contains the inner exception thrown by Assumes. + + + + + Throws an exception if the specified value is null. + + The type of value to test. + + + + Throws an exception if the specified value is null or empty. + + + + + Throws an exception if the specified value is null or empty. + + The type of value to test. + + + + Throws an exception if the specified value is null or empty. + + The type of value to test. + + + + Throws an exception if the specified value is not null. + + The type of value to test. + + + + Throws an exception if the specified object is not of a given type. + + The type the value is expected to be. + The value to test. + + + + Throws an public exception if a condition evaluates to true. + + + + + Throws an public exception if a condition evaluates to true. + + + + + Throws an public exception if a condition evaluates to true. + + + + + Throws an public exception if a condition evaluates to false. + + + + + Throws an public exception if a condition evaluates to false. + + + + + Throws an public exception if a condition evaluates to false. + + + + + Throws an public exception. + + + + + Verifies that a value is not null, and throws an exception about a missing service otherwise. + + The interface of the imported part. + + + + Throws an public exception. + + Nothing, as this method always throws. The signature allows for "throwing" Fail so C# knows execution will stop. + + + + Throws an public exception. + + Nothing, as this method always throws. The signature allows for "throwing" Fail so C# knows execution will stop. + + + + Helper method that formats string arguments. + + + + + The exception that is thrown when an internal assumption failed. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Show the assert if showAssert==true. + + Whether to show the assert. + + The assertion dialog may yet be suppressed if + ((DefaultTraceListener)System.Diagnostics.Trace.Listeners["Default"]).AssertUiEnabled == false + + + + + Extension methods to make it easier to safely invoke events. + + + + + Invokes any event handlers that are hooked to the specified event. + + The event. Null is allowed. + The value to pass as the sender of the event. + Event arguments to include. + + + + Invokes any event handlers that are hooked to the specified event. + + The event. Null is allowed. + The value to pass as the sender of the event. + Event arguments to include. + + + + Invokes any event handlers that are hooked to the specified event. + + The type of EventArgs. + The event. Null is allowed. + The value to pass as the sender of the event. + Event arguments to include. + + + + A disposable object that also provides a safe way to query its disposed status. + + + + + Gets a value indicating whether this instance has been disposed. + + + + + Common utility methods used by the various error detection and reporting classes. + + + + + Trims away a given surrounding type, returning just the generic type argument, + if the given type is in fact a generic type with just one type argument and + the generic type matches a given wrapper type. Otherwise, it returns the original type. + + The type to trim, or return unmodified. + The SomeType<> generic type definition to trim away from if it is present. + , if it is not a generic type instance of ; otherwise the type argument. + + + + Helper method that formats string arguments. + + + + + Common runtime checks that trace messages and invoke an assertion failure, + but does *not* throw exceptions. + + + + + Verifies that a value is not null, and reports an error about a missing MEF component otherwise. + + The interface of the imported part. + + + + Reports an error if a condition evaluates to true. + + + + + Reports an error if a condition does not evaluate to true. + + + + + Reports an error if a condition does not evaluate to true. + + + + + Reports an error if a condition does not evaluate to true. + + + + + Reports an error if a condition does not evaluate to true. + + + + + Reports a certain failure. + + + + + Reports a certain failure. + + + + + Common runtime checks that throw ArgumentExceptions upon failure. + + + + + Throws an exception if the specified parameter's value is null. + + The type of the parameter. + The value of the argument. + The name of the parameter to include in any thrown exception. + The value of the parameter. + Thrown if is null + + + + Throws an exception if the specified parameter's value is IntPtr.Zero. + + The value of the argument. + The name of the parameter to include in any thrown exception. + The value of the parameter. + Thrown if is IntPtr.Zero + + + + Throws an exception if the specified parameter's value is null. + + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if is null + + This method allows async methods to use Requires.NotNull without having to assign the result + to local variables to avoid C# warnings. + + + + + Throws an exception if the specified parameter's value is null. + + The type of the return value of the task. + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if is null + + This method allows async methods to use Requires.NotNull without having to assign the result + to local variables to avoid C# warnings. + + + + + Throws an exception if the specified parameter's value is null. + + The type of the parameter. + The value of the argument. + The name of the parameter to include in any thrown exception. + The value of the parameter. + Thrown if is null + + This method exists for callers who themselves only know the type as a generic parameter which + may or may not be a class, but certainly cannot be null. + + + + + Throws an exception if the specified parameter's value is null or empty. + + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if is null or empty. + + + + Throws an exception if the specified parameter's value is null, empty, or whitespace. + + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if is null or empty. + + + + Throws an exception if the specified parameter's value is null, + has no elements or has an element with a null value. + + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if the tested condition is false. + + + + Throws an exception if the specified parameter's value is null, + has no elements or has an element with a null value. + + The type of the elements in the sequence. + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if the tested condition is false. + + + + Throws an exception if the specified parameter's value is not null + and has an element with a null value. + + The type of the elements in the sequence. + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if the tested condition is false. + + + + Throws an if a condition does not evaluate to true. + + + + + Throws an if a condition does not evaluate to true. + + Nothing. This method always throws. + + + + Throws an ArgumentException if a condition does not evaluate to true. + + + + + Throws an ArgumentException if a condition does not evaluate to true. + + + + + Throws an ArgumentException if a condition does not evaluate to true. + + + + + Throws an ArgumentException if a condition does not evaluate to true. + + + + + Throws an ArgumentException. + + Nothing. It always throws. + + + + Throws an ArgumentException. + + Nothing. It always throws. + + + + Throws an ArgumentException. + + + + + Helper method that formats string arguments. + + + + + Indicates to Code Analysis that a method validates a particular parameter. + + + + + Initializes a new instance of the class. + + + + diff --git a/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.VS.dll b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.VS.dll new file mode 100644 index 000000000..8f3c48b51 Binary files /dev/null and b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.VS.dll differ diff --git a/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.VS.xml b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.VS.xml new file mode 100644 index 000000000..a1b99c220 --- /dev/null +++ b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.VS.xml @@ -0,0 +1,56 @@ + + + + Microsoft.VisualStudio.Workspace.Extensions.VS + + + + + Exports an to the MEF catalog + with metadata as described by . + + + + + Initializes a new instance of the class. + + The unique type for this Provider + + The set of file extensions (including the leading period) that this debug provider + is capable of. + Provider priority + + + + IVsDebugLaunchTargetProvider interface + + + + + Allow customization to happen on a VsDebugTargetInfo struct + + The VS specific target info struct + Debug launch being passed + + + + IVsDebugLaunchTargetProviderMetadata interface definition + + + + + Represents an item that should be displayed in the Visual Studio host. + + + + + Gets the command group for a command. + + + + + Gets the command id for a specific command in a group. + + + + diff --git a/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.dll b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.dll new file mode 100644 index 000000000..954a42053 Binary files /dev/null and b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.dll differ diff --git a/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.xml b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.xml new file mode 100644 index 000000000..ef7c7663f --- /dev/null +++ b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.Extensions.xml @@ -0,0 +1,222 @@ + + + + Microsoft.VisualStudio.Workspace.Extensions + + + + + BuildActionContext context class + + + + + Identifies an action context that launches a build. + + 1B8311D1-09CE-4D9F-A2A5-C885F5763A4A + + + + The Clean target build type + + + + + The Rebuild target build type + + + + + Identifies an action context that launches a build. + + {D9212C5D-975A-49E6-A753-2F586BFBF077} + + + + Clean context type GUID + + + + + Rebuild context type GUID + + + + + Initializes a new instance of the class. + + The path of the process or script to launch (without arguments). + The arguments to pass to the process. + The build configuration context of this build action + + + + + + + Return the matching Type for a build type + + The target build type + The GUID of the context type + + + + Build types available to target + + + + + Normal incremental build + + + + + Clean build outputs + + + + + Re build target + + + + + Interface to describe a process launch action context + + + + + Gets the path of the process or script to launch (without arguments). + + + + + Gets the arguments to pass to the process. + + + + + Describes the context that can start processes based on file context. + + + + + Initializes a new instance of the class. + + The path of the process or script to launch (without arguments). + The arguments to pass to the process. + + + + + + + + + + Exports an to the MEF catalog + + + + + Initializes a new instance of the class. + + type of provider + Supported extension for this provider + Priority + + + + Metadata definition for interface IProjectFilesProvider + + + + + IProjectFilesProvider interface + + + + + Get the project files + + Path to a project File + A Cancellation token + Array of FileSystemInfo + + + + Describes Roslyn-based language service projects. + + + + + Identifies a Roslyn project context. + + D9212C5D-975A-49E6-A753-2F586BFBF077 + + + + Identifies a Roslyn project context. + + {D9212C5D-975A-49E6-A753-2F586BFBF077} + + + + Initializes a new instance of the class. + + The name of the project (the file name without extension). + A value from the managed LanguageNames. + The command line arguments that would be passed to the compiler. + The workspace-relative path to the project directory. + + + + Gets the file name of the project without directory or extension. + + + + + Gets the language of this project. + + + + + Gets the command line arguments passed to the compiler. + + + + + Gets the workspace-relative path to the project directory. + + + + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Path must be rooted.. + + + + + Looks up a localized string similar to Path must be relative.. + + + + diff --git a/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.dll b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.dll new file mode 100644 index 000000000..6891f953a Binary files /dev/null and b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.dll differ diff --git a/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.xml b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.xml new file mode 100644 index 000000000..945b49dc0 --- /dev/null +++ b/Nodejs/Common/Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86/Microsoft.VisualStudio.Workspace.xml @@ -0,0 +1,3026 @@ + + + + Microsoft.VisualStudio.Workspace + + + + + A collection of file system path analysis and manipulation functions. + + + + + Generates an absolute path from a base path and another path. + + + An absolute path to use as the root if is relative. + IMPORTANT: if basePath is a directory, it must end with a directory separator character or else + it will be treated like a filename and discarded. + + A relative or absolute path, that needs to be absolute. + Thrown when the argument is not an absolute path. + + A normalized, absolute path. A path with relative parents (i.e. c:\temp\tmp\..\a.txt) will never be returned. + Not necessarily canonical, in that the file casing of the path is not guaranteed to be consistent. + + + + + given the absolute location of a file, and a disc location, returns relative file path to that disk location. + + + The base path we want to relativize to. Must be absolute. + Should not include a filename as the last segment will be interpreted as a directory. + + + The path we need to make relative to basePath. The path can be either absolute path or a relative path in which case it is relative to the base path + + + The relative path (can be the full path when no relationship exists). + If and are equivalent, the empty string is returned. + + + + + Make sure there is no [unnececery] trailing directory separator. + + directory path + directory path without trailing slash + + + + Make sure there is a trailing directory separator. + + directory path + directory path with trailing slash + + + + Detects whether a given file falls within a given directory. + + The absolute, normalized path to the directory. + The absolute, normalized path to the file. + true if the given file falls within the given directory. + + The current implementation of this method does NOT normalize the paths before the check. + + + + + Tests a path to see if it is absolute or not. More reliable that Path.IsPathRooted. + + The path to check. + true if the path is rooted; false otherwise. + + + + Gets the correctly cased path for a given directory. + + Directory to find the correct casing for. + New directory with correctly cased path. + + + + A few fast checks that determine whether normalization of a path is warranted. + + A non-empty path. + true if normalization is likely needed; false if normalization doesn't appear to be needed. + + In the interest of executing very fast (since this method is used in fast-or-slow-path checks) + this method by no means is comprehensive, but it should catch the common causes for needing normalization. + + + + + Helper function to create Uri object form path. + + path string + uri object + + + + Fixes common problems with local paths like double-backslash. + + The path to fix up. + The cleaned up path. + + + + Async Event class to support firing async EventHandlers + + The EventArgs type to support + + + + Initializes a new instance of the class. + + + + + Return the async invocation list + + + + + Operator += to support standard mechanism of event subscription + + The async event class + Async event callback to add + The existing or created Async event class + + + + Operator -= to support standard mechanism of event subscription + + The async event class + Async event callback to remove + The Async event + + + + Insert a callback in a pos + + The async event class + Position where to insert the callback + Async event callback + The Async event + + + + Invoke async to await for each + + sender object + Event Argument instance + The task to await to wait for all notifications to complete + + + + Invoked when changes to the Invocation List are added or removed + + If a new item was added otherwise remove + + + + Class BatchFileSystemEventArgs + Allow a notification of multiple FileSystemEventArgs entities + + + + + Initializes a new instance of the class. + + All file systems events + + + + All file system events + + + + + Build configuration changed event args + + + + + Initializes a new instance of the class. + + The project file relative path + The new build configuration + + + + The project file affected + + + + + The new build configuration + + + + + Build Configuration Context implementation + + + + + Identifies an action context that launches a debug session. + + + + + Identifies an action context that launches a debug session. + + + + + Initializes a new instance of the class. + + The build configuration + + + + + + + BuildUpToDateActionContext class + + + + + Identifies an action context that invoke up to date check + + + + + Guid of ContextType + + + + + Initializes a new instance of the class. + + IBuildUpToDateCheckProvider provider + The contetx project file + Optional build configuration + + + + Check if the context project file is up to date + + A cancellation token + True or false depending if the context project file is up to date + + + + ExportBuildUpToDateCheckAttribute class to MEF export Build up to date provider attributes + + + + + Initializes a new instance of the class. + + The unique type for this IBuildUpToDateCheckProviderMetadata + The supported file extension + File scanner priority + + + + interface IBuildUpToDateCheckProvider + + + + + Check if project file is up to date based on a build configuration + + The project target file to evaluate + An optional build configuration + Cancellation token + true of if the project file is up to date or false otherwise + + + + IBuildUpToDateCheckProviderMetadata interface + + + + + IWorkspace helper classes for build related tasks + + + + + Get a Build Configuration Context type action + + Workspace instance + The target project file + The desired context type + Callback to invoke to match a file context + File context actions that match the passed target project build configuration + + + + Get a Build Configuration Context type action + + Workspace instance + The target project file + The desired context type + Optional target project build configuration + File context actions that match the passed target project build configuration + + + + Get all file contexts that match a specific target project build configuration + + Workspace instance + The target project file + The desired context type + Optional target project build configuration + File Contexts grouped by provider + + + + Return a valid BuildUpToDateActionContext to a project file + + Workspace instance + The target project file + Optional target project build configuration + Null or a valid BuildUpToDateActionContext for a project file + + + + Build a project by invoking a build context actions from a provider + + Workspace instance + The target project file + The build configuration + The desired build context type + A progress monitor + Optional cancellation token + Completion task with build succeed result + + + + Define a Build Configuration Context + + + + + Configuration setting context + + + + + A Debugger Launch Action context + + + + + Identifies an action context that launches a debug session. + + + + + Startup Project name entry + + + + + Identifies an action context that launches a debug session. + + + + + Initializes a new instance of the class. + + Debug target path + Provider to launch this context + Build Configuration setting + + + + Initializes a new instance of the class. + + Launch configuration parameters + Provider to launch this context + Build Configuration setting + + + + Launch configuration parameters + + + + + Launch the target using the provider being initialized + + The service provider + + + + MEF export helper for ILaunchConfigurationProviderMetadata + + + + + Initializes a new instance of the class. + + The unique type for this ILaunchDebugTargetProviderMetadata + The supported file extension + Launch type name + Launch Json schema content + If Runtime support context is supported + File scanner priority + + + + + + + + + + + + + Specialized Context action to debug that support a build step action + + + + + A pre build step action to invoke before the debug action is executed + + + + + Debug Context progress update + + + + + Controls whether the debugging experience should continue or not + + + + + ILaunchConfigurationProvider interface + + + + + If a project file is being supported by this launch configuration provider + + Debug Launch Action context + true if this context is being supported for this provider + + + + Create a launch configuration settings for a project file + + Debug Launch Action context + The launch ettings instance + + + + ILaunchConfigurationProviderMetadata interface + + + + + Launch type name + + + + + The launch json schema + + + + + If Context support is being resolved on runtime or only by its static metadata + + + + + Launch Configuration Constants + + + + + Name key + + + + + Project Key + + + + + Type Key + + + + + Target Key + + + + + Debug Type key + + + + + Arguments Key + + + + + Env Key + + + + + Current Directory Key + + + + + Remote machine key + + + + + Port name key + + + + + Debug engine key + + + + + Configurations Key + + + + + Defaults Key + + + + + Defaults Key + + + + + Launch Json version Value + + + + + DebugLaunchActionContextAttribute class to MEF export debug launch attributes + + + + + Initializes a new instance of the class. + + The unique type for this ILaunchDebugTargetProviderMetadata + The supported file extension + If Runtime support context is supported + File scanner priority + + + + + + + IDebugLaunchActionContext interface + + + + + Launch a Debug Context + + The service provider context + The Debug context to launch + + + + If this context is supported for this Provider + + A file workspace + true if this provider is able to handle this context + + + + ILaunchDebugTargetProviderMetadata interface + + + + + If the provider is capable to handle context + + + + + Default implementation for a IFileContextActionResult interface + + + + + Initializes a new instance of the class. + + If success or not this result instance + + + + + + + Describes an action supported by a . + + + + + Executes the action. + + A means to report progress as the action executes. + A token that may cancel the action. + A task whose result describes the result of the action. + + + + IHostService interface definition + + + + + Gets the path to the root directory for the host app local data. + + An absolute path. + + + + FileDataValue class to return from IFileScanner interface + + + + + Initializes a new instance of the class. + + The type of this data value + Name of the entry + Value entry(can be null) + + + + Type of this scanned entry + + + + + Name of the scanned entry + + + + + Value of the scanned entry + + + + + Default enumeration types for FileScannerInfo + + + + + None + + + + + A source file + + + + + An output file + + + + + A Project Reference file + + + + + A imported dependency + + + + + Exports an to the MEF catalog + with metadata as described by . + + + + + Initializes a new instance of the class. + + The unique type for this IFileScannerMetadata + A simple name that describes the kind of files this scanner is suitable for. + + The set of file extensions (including the leading period) that this scanner + is capable of parsing. + List of types supported by this file scanner + File scanner priority + + + + Initializes a new instance of the class. + + The unique type for this IFileScannerMetadata + A simple name that describes the kind of files this scanner is suitable for. + + The set of file extensions (including the leading period) that this scanner + is capable of parsing. + List of types supported by this file scanner + + + + Initializes a new instance of the class. + + The unique type for this IFileScannerMetadata + A simple name that describes the kind of files this scanner is suitable for. + The supported file extension + The supported type to be scanned + + + + Gets a simple name that describes the kind of files this scanner is suitable for. + + A short string, such as "C++" or "C#". + + + + Gets the set of return types supported by this scanner + + + + + File Index Info + + + + + Initializes a new instance of the class. + + read only collection of file references + read only collection of file dependencies + + + + Empty File Scanner array + + + + + File References + + + + + File Dependencies + + + + + if we have both empty containers + + true if both collections are empty + + + + EventArg for File scanning phase + + + + + Initializes a new instance of the class. + + Relative workspace file path + Type of the FileScanning phase + scanned data value + + + + Relative workspace file path + + + + + Type of the FileScanning phase + + + + + The Scanned data completed + + + + + Class FileScannerTypes + + + + + File Reference scanner type + + + + + File Data scanner type + + + + + Symbol scanner type + + + + + File Index Info Type + + + + + File Data Values Info Type + + + + + Symbols defintion type + + + + + Describes the definition of a file reference + + + + + Initializes a new instance of the class. + + The file relative path + The context of this reference (or null) + Type of this reference (or null) + If file system entity can be used + + + + The workspace relative reference file path + + + + + The Context of this Reference (or null if there is none) + + + + + If File system entity can be used to track the workspace reference + + + + + The reference type + + + + + + + + + + + + + + Offers services to discover symbols defined in source files. + + + An implementing type should export this interface with + the . + Each instance of this interface should be prepared to deal with just one + file type. If a single scanner advertises multiple + , it should be + prepared to identify which file type it is (if necessary) based solely on + the content of the file and not the file name. + If the file extension is an important distinguishing factor, use multiple + instances of this interface, each advertising support for the various file + extensions. + + + + + Scan a source file for symbol definitions. + + the expected type to be scanned + The workspace file to scan + A token that can cancel the scan. + A task whose result is the collection of discovered symbols. + + + + Describes an extension's applicability and capabilities. + + + + + Gets a simple name that describes the kind of files this scanner is suitable for. + + A short string, such as "C++" or "C#". + + + + Gets the set of return types supported by this scanner + + + + + An interface that may be exported to provide a collection of symbol scanners at runtime. + + + + + Gets a collection of symbol scanners. + + A cancellation token. + A collection of symbol scanners with metadata. + + + + IIndexWorkspaceService interface definition + + + + + Index Workspace state + + + + + To receive notifications when properties are changed + + + + + File Scanner notification + + + + + Verify if a path is being part of this indexing + + The file enetity exist + True if the indexing has this entitye + + + + Refreshes the contents of any caches or subscriptions with the actual contents from disk. + + Type of elements being refreshed + + Use true to continuously watch the file system and provide updates + until is canceled. + Use false to refresh just once. + + + A progress reference callback + + + A token to cancel the refresh operation. + Must not be if is true. + + A task representing the long-running operation. + + + + Refresh an element + + Reference to element path + Cancellation token + A task representing the long-running operation. + + + + Refresh an element + + Enumerable of entities to refresh + Cancellation token + A task representing the long-running operation. + + + + Get the File scanner state type + + Reference to element path + Type of file scanner + Datetime when the file scanner data or null + + + + Return file dependants to a file contained in our workspace + + File entity path + Context for the reference (or null) + reference types + list of dependant files + + + + Return file references to a file contained in our workspace + + File entity path + Context for the reference (or null) + reference types + list of references + + + + Return a dictionary of data from a File system entity + + Type of Value being excpected + File entity path + The type of data being retrieved + A dictionary of data + + + + IndexProgress class + + + + + Initializes a new instance of the class. + + The progress state + Percent completed + Current elements progress + + + + Current elements + + + + + Current state of the indexing progress + + + + + Gets the symbol name and location. + + + + + Index progress state + + + + + Initialize state + + + + + File indexing + + + + + File Index Info scanning + + + + + File symbols scanning + + + + + File Data values scanning + + + + + Completed state + + + + + The elements stored in the index. + + + + + No index element. + + + + + The cache of the file listings in the workspace. + + + + + The cache of all symbol definitions in the workspace. + + + + + The cache of all the contexts in which source files may appear. + + + + + All elements of the cache. + + + + + IndexWorkspace properties + + + + + State property + + + + + Our Index Workspace state + + + + + None + + + + + FileSystem is in progress + + + + + FileReferences is in progress + + + + + FileDataValues is in progress + + + + + SymbolScanning is in progress + + + + + Indexing is completed + + + + + Describes the visibility of the symbol to surrounding code. + + + + + None + + + + + The symbol has public visibility. + + + + + The symbol has internal visibility. + + + + + The symbol has friend visibility. + + + + + The symbol has protected visibility. + + + + + The symbol has private visibility. + + + + + Describes the definition of a symbol, within the context of a source file. + + + This interface does not specify the path to the source file because some + of its producers (e.g. may not know the path + to the source file. Also, some source files may not even exist locally, + so setting the context of which file the symbol appears in is the + responsibility of other code that hands this interface around. + + + + + Initializes a new instance of the class. + + The name of the symbol. + The kind of symbol. + The visibility of the symbol to surrounding code. + The location of the definition. + + + + Initializes a new instance of the class. + + The name of the symbol. + The fully-qualified name of the symbol. + The kind of symbol. + The visibility of the symbol to surrounding code. + The location of the definition. + + + + Gets the short name of the symbol. + + + + + Gets the fully-qualified name of the symbol. + + + + + Gets the position of the symbol's definition within the source file. + + + + + Gets the kind of symbol. + + + + + Gets the accessibility of the symbol. + + + + + + + + + + + + + + Describes a symbol's definition with metadata describing where it is found. + + + + + Initializes a new instance of the class. + + The symbol definition. + The path to the file that defines the symbol. + + + + Gets the symbol name and location. + + + + + Gets the absolute path to the file containing the symbol. + + + + + Describes the various types of symbols. + + + + + None + + + + + A class. + + + + + A constant. + + + + + A delegate. + + + + + An enum. + + + + + A member of an enum. + + + + + An event. + + + + + A field. + + + + + An interface. + + + + + A method. + + + + + A module. + + + + + A property. + + + + + A structure. + + + + + A namespace + + + + + Symbol scanner base class + + + + + + + + perform a symbol scanning on a file content + + the content of source file + a cancellation token + Symbols found during scanning + + + + Describes a location in a text file. + + + + + Initializes a new instance of the struct. + + The line number in the text file. Starts at 1. + The column number in the text file. Starts at 1. + + + + Gets the line number within the text file. + The first line of a file is considered Line 1. + + + + + Gets the column within the text file. + The first column on a line is considered column 1. + + + + + + + + + + + + + + + + + A symbol type service + + + + + Searches for symbol definitions that match a given query. + + A leading substring of the symbol to find. + Receives + A token that may cancel the search. + A task whose completion indicates the search is complete. + + + + Helper utils for FileSystemEventArgs class + + + + + Check if related to a directory changed event + + The File System Event + true is a directory changed event + + + + IProjectConfigurationManager interface + + + + + Active workspace + + + + + To receive notifications when properties in this are changed + + + + + Build configuration changed + + + + + All project file configurations from the different sources + + + + + Get the Current Project + + + + + Retrieve project configuration for a Project File + + The project file path + Optional name of the configuration + The Active build configuration + A project file settings instance + + + + Return all build configurations for a project file + + The project file + list of build configurations or null if not found + + + + Get active build configuration + + The project file + The active buidl configuration + + + + Create Debug launch settings for a project file + + The project file + Debug Launch Action context + list of launch settings to composite + A Composite launch settings + + + + Return a build action based on an existing build action context + + The context project file + The original build context action + Completion task + + + + Workspace (settings based) Item Filter; + + + + + the filter key (used to create this filter by IWorkspaceItemFilterService). + + + + + Fires when fillter settings (may have) changed + + + + + Check a single item against the filter + + full path to the item (file or folder) we want to check + true to consider path a folder, flase a file + true if items is "filtered out" by curent filter settings + + + + Check a single item against the filter. The item must exist on disk. + + full path to the item (file or folder) we want to check + true if items is "filtered out" by curent filter settings + + + + Workspace Item Filter service. + + + + + Gets the Item Filter object for the given filterKey. + + the item filter key.The "filterKey" is used as a name of the string array property in the Generic Workspace settings + that contains individual filter patterns. + item filter object + + + + Filters change event data. + + + + + Initializes a new instance of the class. + + afected cone + + + + Full path. the ScopePath is the "root" of a subtree that is being (potentially) affected by the changes. + All items outside the ScopePath cone are not affected by the changes. + + + + + Provider workspace factory + + Type of provider to create + + + + Create an instance of provider + + The workspace context + Created instance of a provider type + + + + Change type enumeration + + + + + AllProjectFileConfigurations property changed + + + + + Current Active Project + + + + + Current Debug Context Action + + + + + Current Build Context Action + + + + + PropertyChangedEventArgs class + + Properties type + + + + Initializes a new instance of the class. + + Array of properties that changed + + + + The property that changed + + + + + Return true if this event contians a change for a property + + The property id + true if the property is part of this event + + + + Helper class for the type IPropertySettings + + + + + Deep copy of a configuration instance + + The input sttings instance + Factory creator for IPropertySettings + Copy of the configuration instance + + + + Get Value of type (T) + + Desired type excpected + The input sttings instance + Key to look for in the configuration + The value contained in the configuration + + + + Get Value of type (T) + + Desired type expected + The setting instnace + Key to look for in the configuration + Default value to provide if no value is found + The value contained in the configuration or the default value being passed + + + + GetValues using Reflection API + + The setting instance + Target object to set values + List of property infos to populate + An optional property name converter + + + + GetValues using Reflection API + + The setting instance + Target object to set values + Binding flags of target + An optional property name converter + + + + SetValues using Reflection API + + The setting instance + Source object to get values + List of property infos to populate + An optional property name converter + + + + SetValues using Reflection API + + The setting instance + Source object to get values + Binding flags of target + An optional property name converter + + + + Return an array of PropertyInfo from a type + + The type class + List of property names + Array of PropertyInfo types + + + + Exports an to the MEF catalog + with metadata as described by . + + + + + Initializes a new instance of the class. + + The unique type for this IFileContextActionProviderMetadata + The provider priority + + A collection of GUIDs that identify the values + that this language service can initialize from. + + + + + Initializes a new instance of the class. + + The unique type for this IFileContextActionProviderMetadata + + A collection of GUIDs that identify the values + that this language service can initialize from. + + + + + Gets a collection of GUIDs that identify the values + that this build action provider may provide build actions for. + + + + + Exports an to the MEF catalog + with metadata as described by . + + + + + Initializes a new instance of the class. + + The unique type for this IFileContextProviderMetadata + The provider priority + + A collection of the values that may be produced for + by this provider. + + + + + Initializes a new instance of the class. + + The unique type for this IFileContextProviderMetadata + + A collection of the values that may be produced for + by this provider. + + + + + + + + Export File Extension provide base + + + + + Initializes a new instance of the class. + + The unique type for this Provider + + The set of file extensions (including the leading period) that this scanner + is capable of parsing. + Provider priority + Contract type + + + + Gets the set of file extensions (including the leading period) that this provider + is capable of. + + + + + Exports an to the MEF catalog + with metadata as described by . + + + + + Initializes a new instance of the class. + + The unique type for this ILanguageServiceProviderMetadata + The provider priority + + A collection of GUIDs that identify the values + that this language service can initialize from. + + + + + Gets a collection of GUIDs that identify the values + that this language service can initialize from. + + + + + Offers language service activation for open files. + + + An implementing type should export this interface with + the . + + + + + Initializes the language service for the specified file, or updates it with a new set of contexts. + + The absolute path of the file to initialize the language service for. + The contexts available for this file. + A token that may cancel initialization of the language service. + A task that tracks the asynchronous operation. + + + + Removes the language service integration for the specified file. + + The absolute path of the file to initialize the language service for. + A task that tracks the asynchronous operation. + + + + Describes an extension's applicability and capabilities. + + + + + Base export attribute to support IProviderMetadataBase + + + + + Initializes a new instance of the class. + + The unique type for this IProviderMetadataBase + The provider priority + Contract Type + + + + Initializes a new instance of the class. + + The unique type for this IProviderMetadataBase + Contract Type + + + + The unique type for this IProviderMetadataBase + + + + + The provider export Priority + + + + + Describes the context a file may belong to, such as a compilation unit for a source file, + a consuming HTML page for a .js file, etc. + + + An instance of this type may be shared across many files, or members of the context. + + + + + Initializes a new instance of the class. + + + An identifier for the type of the proivider who create thif Context + + + An identifier for the type of object and data represented in . + This may be used to match with a compatible language service provider. + + + The information a language service would need to fully initialize for a member of this context. + + + The set of workspace-relative paths to files that served as inputs to the construction of this context. + This is *not* the set of files that would be read during execution of a build. + + + The user-friendly name for this context (e.g. "Debug|Any CPU"). May be empty, but must not be null. + + + The INotifyFileContextChanged implementation to use it for notification + + + + + + + + The Provider source for this Context + + + + + Gets an identifier for the type of object and data represented in . + This may be used to match with a compatible language service provider. + + + + + Gets the information a language service would need + to fully initialize for a member of this context. + + + + + Gets the set of workspace-relative paths to files that served as inputs to computing this context. + This is *not* the set of source files that would go into a compilation unit, but rather + the set of files read to determine *how* to assembly the context. + + + This collection may be used to know when to refresh this context + (e.g. when the user changes the project file or project.lock.json). + + + + + Gets the name for this context (if any) that may be displayed to the user + to pick among several available contexts. + + + Typically a full configuration name (e.g. "Debug|Any CPU"). + But may be . Never null. + + + + + FileContextActionDelegate class + + + + + Initializes a new instance of the class. + + The delegate IFileContextAction + Display name + + + + + + + + + + The inner action of this delegate. + + + + + + + + A trivial implementation of . + + The key of the group. + The element type of the group. + + + + The elements in the group. + + + + + Initializes a new instance of the class. + + The key for this group. + The elements in this group. + + + + + + + + + + + + + IPropertySettings interface + + + + + Default IPropertySettings implementation + + + + + Initializes a new instance of the class. + + Array of KeyValuePair to initialize + + + + Initializes a new instance of the class. + + + + + + + + + + + Describes an action supported by a . + + + + + File Context source of this Action + + + + + Gets the name of this action as it should be presented to the user. + + + + + Provides an update on the progress of an ongoing operation. + + + Other interfaces may be implemented by objects that implement this interface in order to provide + action specific updates. + + + + + Offers arbitrary action execution for files. + + + An implementing type should export this interface with + the . + + + + + Gets the actions appropriate for a given file and context. + + + The file workspace being passed + + The context to act with. + A token that may cancel the request. + + A task whose result is a list of actions that may be invoked for a given file and context. + + + + + Describes an extension's applicability and capabilities. + + + + + Describes the result of some . + + + Other interfaces may be implemented by objects that implement this interface + in order to provide data that is specific to a particular kind of action. + + + + + Gets a value indicating whether the action was successful. + + + + + Describes an + + + + + Gets the set of file extensions (including the leading period) that this extension + is capable of parsing. + + + + + Interface to provide an action when a file context has been modified + + + + + When the File Context has changed + + + + + An interface describing metadata found on exports that consume specific types of file contexts. + + + + + Gets a collection of GUIDs that identify the values + that this language service can initialize from. + + + + + Offers services to discover contexts defined in source files. + + + + An implementing type should export this interface using + the . + + + Implementations should register contexts both for source files and outputs + that may serve as inputs to other contexts. + For example when a project B references project A, someone interested in initializing + a language service for B may need to discover the context for A given A's primary output, + which serves as an input for B. + + + + + + Finds contexts for a given file. + + + The file workspace being passed + + A token whose cancellation should terminate the search. + + A task whose result is collection of contexts that the file belongs to. + The collection should never be null, but it may be empty. + + + A file may belong to contexts that are not discoverable on-demand with this method. + + + + + Describes an extension's applicability and capabilities. + + + + + Gets a collection of the values that may be produced for + by this provider. + + + + + Class FileSystemContextChanged. + Use the workspace file system watcher notification to propagate a FileContext notification + + + + + Initializes a new instance of the class. + + Workspace instance + Teh file system event filter to apply + + + + Initializes a new instance of the class. + + Workspace instance + Input files to track + Change types to track + + + + + + + Class NotifyFileContextChanged + + + + + Initializes a new instance of the class. + + Callback action when subscriptions changed + + + + + + + A interface that allow to be dispose usign an async mechanism + + + + + Dipose usign async mechanism + + Completion task + + + + Interface IFileWatcherService + Sink events to receive file system notification changes using an async pattern + + + + + Event File system notification + + + + + Batch Event File system notification + + + + + Workspace service to find files + + + + + Searches the workspace for files matching a pattern. + + The query to match filenames on. It may be matched based on substring, or a richer parsing of the files. + Receives the full path to each file as it is discovered. + A token whose cancellation will cancel the query. + A task that completes when all match files have been reported. + + + + Provider Metadata Base + + + + + The Unique Type for this Provider + + + + + Provider priority + + + + + IWorkspace interface definition + + + + + Gets the path to the root directory of the source tree. + + An absolute path. + + + + Gets the absolute path for a given path, which may be relative to Workspace.Location. + + + The path that is absolute, or relative to the workspace root folder. + May be empty. + + An absolute path. + + + + Converts an absolute path to a path relative to the root of this workspace. + + The path to make relative. + A relative path. + + + + Gets the file contexts associated with the specified workspace location. + + + The path to the file or folder for which a context is required. + May be absolute or relative to workspace root . + + The collection of file context types of interest ot the caller. + A cancellation token. + The collection of applicable file context providers. + + + + Return matched ILanguageServiceProvider's for a file context path + + Absolute path of the file which will provide the context + Cancellation token + Collection with matched services with it's file contexts + + + + Gets the actions available at the specified path. + + + The path to the file or folder for which a context is required. + May be absolute or relative to workspace root . + + Optional list of file context types + A cancellation token. + + A task whose result is a collection of actions that can be taken on the specified . + The collection should never be null, but it may be empty. + + + + + Gets a set of files within the workspace. + + + The folder within the workspace that should be searched for files. + May be absolute, or relative to the . + An empty path is interpreted as the workspace root. + + + true to return files in and its subfolders; + false to return only files found in the immediate folder. + + A token that cancels the query. + A task whose result is the set of files found. + + + + Gets a set of directories within the workspace. + + + The folder within the workspace that should be searched for directories. + May be absolute, or relative to the . + An empty path is interpreted as the workspace root. + + + true to return files in and its subfolders; + false to return only files found in the immediate folder. + + A token that cancels the query. + A task whose result is the set of files found. + + + + Logger listener delegate + + Log Record generated + + + + Workspace Logger class + + + + + CurrentLevel Singleton property + + + + + Name property + + + + + Level property + + + + + Create a logger instance using a name + + name of the logger + a Logger class instance + + + + Add a logger listener delegete + + listener delegate instance + + + + Remove a logger listener delegete + + listener delegate instance + + + + Log a message + + level desired for this message + Message being logged + Message arguments being passed + + + + Return true if a logging level is enabled + + level desired to evlauate + true if the level is enabled + + + + Error logging level + + Message being logged + Message arguments being passed + + + + Debug logging level + + Message being logged + Message arguments being passed + + + + Info logging level + + Message being logged + Message arguments being passed + + + + Initializes a new instance of the class. + + + + + Logging level property + + + + + Add a logger listener delegete + + listener delegate instance + + + + Remove a logger listener delegete + + listener delegate instance + + + + Log internal + + the Logger instance + level desired + Message being logged + + + + Logging level enumeration + + + + + Logging is off + + + + + Fatal level + + + + + Error level + + + + + Warning level + + + + + Info level + + + + + Debug level + + + + + Trace level + + + + + LogRecord class + + + + + Initializes a new instance of the class. + + Logger instance + desired level + Message being logged + + + + Logger instance who generated this Record + + + + + Logging level of the Record + + + + + When logging happened + + + + + Managed thread id of Record + + + + + Message being logged + + + + + Priority enum for Providers + + + + + Lowest priority + + + + + BelowNormal priority + + + + + Normal priority + + + + + AboveNormal priority + + + + + Highest priority + + + + + Result of retreival a single setting value from the current settings files. + + + + + the value was successfuly read from a settings file. This result means there is a such an element set in settings file. + + + + + The value is not present in the settings file. A default value is returned instead. + + + + + The value is present in the settings file, but it is corrupted (for example wrong type). A default value is returned instead. + + + + + Workspace Settings inteface. + + + + + Get the absolute path for the property scope where definition originate. + + + + + Parent (lower priority) Settings wrapper. + + + + + get a [base] settings value (property), the type and meaning of the value is defined by the caller. + This override also specifies the particular settings source that provided the value. + Used in cases where implied root is needed, or when doing "unification" for arrays. + + type of the value + the name of the property + the current value as persisted in the settings + the workspace settings source that is prividing the value. + optional default value to use if the current value is not present or corrupted + see WorkspaceSettingsResult + + + + Per workspace object that is responsible for facilitating the reading and writing the workspace settings as well as coresponding notifications. + Retreived by "Workspace.SettingsManager". + + + + + Event fire when a setting source (a file or in memory provider) changes. + Listeners would need to reaquire (via GetAggregatedSettingsAsync) a new settings collection if they need to reflect the settings changes. + The SettingsChangedEventArgs parameter can be used to narrow down the changes to a particular settings type and scopePath. + + + + + the settings reader (note that when reading the settings hierarchy is already applied, the consumer should not diferentiate between where property is defined on use). + The object returned by this property is immutable. when changes happen a new object will be create (and OnWorkspaceSettingsChanged fired). + + will apply build in inheritance override rules(aka PerUser > PerWorkspace > PerMachine) and return the winning value for a named property, array or child settings + + settings type (coresponding to the independent settings file name) Use SettingsTypes class constants + location under workspace we reqire the settings for. Note that because of hierarchical aggregation model different parts of the workspace tree will have + different settings values. + + settings reader + + + + "Parse" a single single settings file. + + the full path to a settings file + the settings object + + + + Access the settings writer. All changes made are in memory untill the writer is released. + note we will not lock any of the settings files untill commit. Also we are not going to lock the writer within the process. + the individual actions (like individual property writes) will be protected. + We would ensure a machine-wise locking via named event, which will protect against multiple VS instance writing at the same time, + yet it would be possible if via other editor (notepad) or when settings file is shared on network, to have a conflicting writes. + in this rare case comit may still fail. + + if true the caller does not need to call commit at the end (note it is still possible to abort) + the persistance instance + + + + Workspace Settings inteface. + + + + + Enumerate all available property names. + + property names enumerator + + + + get a [base] settings value (property), the type and meaning of the value is defined by the caller. + + type of the value + the name of the property + the current value as persisted in the settings + optional default value to use if the current value is not present or corrupted + see WorkspaceSettingsResult + + + + transactional writer. Note within the single VS process multiple of this can be active simultaneosly. + Last release will trigger settings file writes on disk. It is expected that the persistance writer wrappes to be very short lived. + + + + + Get a writer for a single file. + + settings tupe (coresponding to the independent settings file name) Use SettingsTypes class constants + (relative) location under workspace root where to place the file. + null = "per user /per workspace" (under our .vs folder) + Empty = "workspace root". + + writer + + + + notify that writing was successful for this scope. Needed if autoCommit was false, otherwise closing the scope will cause entire write transation + to be canceled. Used by features that needs to write multple related properties when a partial persistance may cause inconsistent results. + + + + + Abort setting writing transaction. The settings files will not be updated on disk + + + + + Dynamic settings providers + These providers contribute properties to the hierarchical settings collection that comes from a different sources than on disk json files. + Example can be "intristic in memory providers" or "converters" (components that parse other tools formats into AnyCode settings schema). + + + + + Event fire when a settings source managed by the particular provider changes. + The Settings manager will monitor this events and will propagate them to consumers as required. + + + + + Provide a workspace schema settings collection to be merged with the rest of AnyCode sources. + Note provider should only provide a single source that applies only to the "scopePath". + + settings type (coresponding to the independent settings file name) Use SettingsTypes class constants + location under workspace we reqire the settings for. + settings reader + + + + caled when workspace is disposed. The provider should disconnect listeners to other IWorkspace related components here, release resource and such. + The potentially cached IWorkspace is awaialbe to be used, but some functionality may not work (for example it is likely attempting to use SymbolsService will fail) + + async task + + + + Dynamic settings providers + These providers contribute properties to the hierarchical settings collection that comes from a different sources than on disk json files. + Example can be "intristic in memory providers" or "converters" (components that parse other tools formats into our settings schema). + + The factory interface is + + + + + the priority property is used to order the provider settings among other potential providers that can apply for the exact same location. + + + + + Create provider object for the given workspace instance + + workspace that will query for the settings + settings reader + + + + Workspace Settings source writer inteface. + Used for "automated" settings persistance driven by features. + + + + + Persist a value in worspace setings. + + >type of the value + the name of this entry + the value to persist + + + + delete a particular setting (regardles of type - can be property, propertycollection or array ) + + the propery name + + + + Create a new inner scope workspace (to be used later for SetProperty[Array](key, IWorkspaceSettingsSource...); + + a compatable IWorkspaceSettingsSource implementation + + + + Settings change events data. + + + + + Initializes a new instance of the class. + + settings type + settings scope + + + + Settins tupe (aka generic launch) + + + + + The relative path to location under workspace folders, that is affected by the particular change. + This is related to the Settings scope used to aquire the settings from Settings manager such that + any such location uder The value presented here should be considered invalidated. + + + + + standard settings types + + + + + Launch.json we use that for setings specificaly related to F5 experience + + + + + Generic Workspace settings. + + + + + Conviniece extension for IWorkspaceSettings interface + + + + + Wrapper around WorkspaceSettingsResult GetProperty. + Used when caller is not interested by the current state, but just want to get the current value to use. + + type of the value + the settings instance + the name of the property + optional default value to use if the current value is not present or corrupted + the current value as persisted in the settings or default + + + + Get a string value with implied root + + the settings instance + the name of the property + the string value + the implied root + true if exist + + + + Get a string value representing potentially relative path as full path, using implied root as a base + + the settings instance + the name of the property + default value + the absolute path + + + + Wrapper around WorkspaceSettingsResult GetPropertyArray. + Used when caller is not interested by the current state, but just want to get the current value to use. + + type of the elements in array + the settings instance + the name of the property + the current value as persisted in the settings or empty array if there is none + + + + This method will return union of all values in heirarchical chain, not just the top array. + + type of the elements in array + the settings instance + the name of the property + the current value as persisted in the settings or empty array if there is none + + + + A special accessor for inner named settings collection (T=IWorkspaceSettings) + Used when caller is not interested by the current state, but just want to get the current value to use. + + the settings instance + the name of the property + the current value as persisted in the settings or empty + + + + A variant of "Scope", used during "Save" it will create and add a colleciton property with "key" name if it does not already exists. + Used when caller is not interested by the current state, but just want to get the current value to use. + + the settings instance + the name of the property + the current value as persisted in the settings or empty + + + + A special accessor for inner named settings collection arya (T=IWorkspaceSettings) + Used when caller is not interested by the current state, but just want to get the current value to use. + + the settings instance + the name of the property + the current value as persisted in the settings or empty aray + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Collection must not be empty.. + + + + + Looks up a localized string similar to All members must be initialized.. + + + + + Looks up a localized string similar to Value must not be the empty string.. + + + + + Workspace service factory + + + + + Create an instance of a service in the context of a IWorkspace + + The workspace context instance + A Service representing + + + + IWorkspace service helpers + Contains method to access IWorkspace based services + + + + + Get a service type from a workspace + + Type of the service to ask for + The workspace context + Throw exception if service not found + The workpace service or null if not found + + + + Get the IFindFilesService service for a workspace + + workspace instance + The instance of the IFindFilesService + + + + Get the IFileSystemChanged service for a workspace + + workspace instance + The instance of the IFileSystemChanged + + + + Get the IWorkspaceSettingsManager service for a workspace + + workspace instance + The instance of the IWorkspaceSettingsManager + + + + Get the IFileScannerService for a workspace instance + + workspace instance + The instance of the IFileScannerService or null if not found + + + diff --git a/Nodejs/Product/Analysis/Analysis.csproj b/Nodejs/Product/Analysis/Analysis.csproj index 82515be71..e2f82c758 100644 --- a/Nodejs/Product/Analysis/Analysis.csproj +++ b/Nodejs/Product/Analysis/Analysis.csproj @@ -269,7 +269,6 @@ JScript.Designer.cs - diff --git a/Nodejs/Product/Analysis/Analysis/AnalysisExtensions.cs b/Nodejs/Product/Analysis/Analysis/AnalysisExtensions.cs index aaf001891..d8e92d5f2 100644 --- a/Nodejs/Product/Analysis/Analysis/AnalysisExtensions.cs +++ b/Nodejs/Product/Analysis/Analysis/AnalysisExtensions.cs @@ -14,7 +14,6 @@ // //*********************************************************// -using System; namespace Microsoft.NodejsTools.Analysis { internal static class AnalysisExtensions { diff --git a/Nodejs/Product/Analysis/Analysis/AnalysisHashSet.cs b/Nodejs/Product/Analysis/Analysis/AnalysisHashSet.cs index 89447bf05..82693cbe6 100644 --- a/Nodejs/Product/Analysis/Analysis/AnalysisHashSet.cs +++ b/Nodejs/Product/Analysis/Analysis/AnalysisHashSet.cs @@ -18,7 +18,6 @@ using System.Collections; using System.Collections.Generic; using System.Diagnostics; -using System.Linq; using System.Threading; namespace Microsoft.NodejsTools.Analysis.AnalysisSetDetails { diff --git a/Nodejs/Product/Analysis/Analysis/AnalysisLog.cs b/Nodejs/Product/Analysis/Analysis/AnalysisLog.cs index bc7f0fd6a..c3de1cdfe 100644 --- a/Nodejs/Product/Analysis/Analysis/AnalysisLog.cs +++ b/Nodejs/Product/Analysis/Analysis/AnalysisLog.cs @@ -18,7 +18,6 @@ using System.Collections.Generic; using System.IO; using System.Linq; -using Microsoft.NodejsTools.Analysis.Values; namespace Microsoft.NodejsTools.Analysis { internal class AnalysisLog { diff --git a/Nodejs/Product/Analysis/Analysis/AnalysisSerializer.cs b/Nodejs/Product/Analysis/Analysis/AnalysisSerializer.cs index 3376ff475..9fa3b3791 100644 --- a/Nodejs/Product/Analysis/Analysis/AnalysisSerializer.cs +++ b/Nodejs/Product/Analysis/Analysis/AnalysisSerializer.cs @@ -19,9 +19,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.IO; -using System.Linq; using System.Reflection; -using System.Reflection.Emit; using System.Runtime.Serialization; using System.Text; using Microsoft.NodejsTools.Analysis.AnalysisSetDetails; diff --git a/Nodejs/Product/Analysis/Analysis/AnalysisValue.cs b/Nodejs/Product/Analysis/Analysis/AnalysisValue.cs index 1dc9dc82f..0bf09d63a 100644 --- a/Nodejs/Product/Analysis/Analysis/AnalysisValue.cs +++ b/Nodejs/Product/Analysis/Analysis/AnalysisValue.cs @@ -19,7 +19,6 @@ using System.Collections.Generic; using System.Diagnostics; using System.Linq; -using System.Runtime.InteropServices; using Microsoft.NodejsTools.Analysis.Analyzer; using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; diff --git a/Nodejs/Product/Analysis/Analysis/AnalysisValueExtensions.cs b/Nodejs/Product/Analysis/Analysis/AnalysisValueExtensions.cs index df7ec9d11..161308694 100644 --- a/Nodejs/Product/Analysis/Analysis/AnalysisValueExtensions.cs +++ b/Nodejs/Product/Analysis/Analysis/AnalysisValueExtensions.cs @@ -14,10 +14,6 @@ // //*********************************************************// -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; namespace Microsoft.NodejsTools.Analysis.Values { static class AnalysisValueExtensions { diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/CarteseanProductFunctionAnalysisUnit.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/CarteseanProductFunctionAnalysisUnit.cs index 315848845..ad0891001 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/CarteseanProductFunctionAnalysisUnit.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/CarteseanProductFunctionAnalysisUnit.cs @@ -17,7 +17,6 @@ using System; using System.Collections.Generic; using System.Diagnostics; -using System.Linq; using System.Text; using System.Threading; using Microsoft.NodejsTools.Analysis.Values; diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/DDG.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/DDG.cs index 2471f3ae9..e84447d62 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/DDG.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/DDG.cs @@ -17,10 +17,8 @@ using System; using System.Collections.Generic; using System.Diagnostics; -using System.IO; using System.Linq; using System.Threading; -using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Analyzer { diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/DeclarativeEnvironmentRecord.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/DeclarativeEnvironmentRecord.cs index b9a4c9402..ef5c9efdc 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/DeclarativeEnvironmentRecord.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/DeclarativeEnvironmentRecord.cs @@ -17,8 +17,6 @@ using System; using System.Collections.Generic; using System.Diagnostics; -using System.Linq; -using System.Text; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Analyzer { diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/DefinitiveAssignmentEnvironmentRecord.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/DefinitiveAssignmentEnvironmentRecord.cs index 77857585b..474394061 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/DefinitiveAssignmentEnvironmentRecord.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/DefinitiveAssignmentEnvironmentRecord.cs @@ -1,7 +1,5 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Analyzer { diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/EnvironmentRecord.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/EnvironmentRecord.cs index daf12d78f..e1b6efa9f 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/EnvironmentRecord.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/EnvironmentRecord.cs @@ -19,7 +19,6 @@ using System.Diagnostics; using System.Linq; using System.Text; -using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Analyzer { diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/FunctionAnalysisUnit.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/FunctionAnalysisUnit.cs index bf67f488b..3b56cc7ee 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/FunctionAnalysisUnit.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/FunctionAnalysisUnit.cs @@ -15,8 +15,6 @@ //*********************************************************// using System; -using System.Collections.Generic; -using System.IO; using System.Linq; using System.Threading; using Microsoft.NodejsTools.Analysis.Values; diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/FunctionEnvironmentRecord.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/FunctionEnvironmentRecord.cs index cb73b77f0..7ec600a8a 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/FunctionEnvironmentRecord.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/FunctionEnvironmentRecord.cs @@ -15,9 +15,6 @@ //*********************************************************// using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.Linq; using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/GruntfileAnalysisUnit.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/GruntfileAnalysisUnit.cs index af547479b..02ddcf2dd 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/GruntfileAnalysisUnit.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/GruntfileAnalysisUnit.cs @@ -14,10 +14,6 @@ // //*********************************************************// -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; namespace Microsoft.NodejsTools.Analysis.Analyzer { /// diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/IsInstanceScope.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/IsInstanceScope.cs index f7aa3f8b6..8df17c37a 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/IsInstanceScope.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/IsInstanceScope.cs @@ -14,10 +14,6 @@ // //*********************************************************// -using System.Collections.Generic; -using System.Linq; -using Microsoft.NodejsTools.Analysis.Values; -using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Analyzer { diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/ModuleEnvironmentRecord.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/ModuleEnvironmentRecord.cs index 9a9ec90c1..97d91d6e1 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/ModuleEnvironmentRecord.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/ModuleEnvironmentRecord.cs @@ -16,7 +16,6 @@ using System; using System.Collections.Generic; -using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Analyzer { diff --git a/Nodejs/Product/Analysis/Analysis/Analyzer/OverviewWalker.Specializations.cs b/Nodejs/Product/Analysis/Analysis/Analyzer/OverviewWalker.Specializations.cs index 121ede5c7..8a0d6b0a3 100644 --- a/Nodejs/Product/Analysis/Analysis/Analyzer/OverviewWalker.Specializations.cs +++ b/Nodejs/Product/Analysis/Analysis/Analyzer/OverviewWalker.Specializations.cs @@ -17,7 +17,6 @@ using System; using System.Collections.Generic; using System.Linq; -using System.Text; using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; diff --git a/Nodejs/Product/Analysis/Analysis/EncodedSpanExtensions.cs b/Nodejs/Product/Analysis/Analysis/EncodedSpanExtensions.cs index 34c3cc147..2636325b9 100644 --- a/Nodejs/Product/Analysis/Analysis/EncodedSpanExtensions.cs +++ b/Nodejs/Product/Analysis/Analysis/EncodedSpanExtensions.cs @@ -14,7 +14,6 @@ // //*********************************************************// -using System; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis { diff --git a/Nodejs/Product/Analysis/Analysis/FileCookie.cs b/Nodejs/Product/Analysis/Analysis/FileCookie.cs index f8994fac5..3a080385f 100644 --- a/Nodejs/Product/Analysis/Analysis/FileCookie.cs +++ b/Nodejs/Product/Analysis/Analysis/FileCookie.cs @@ -15,9 +15,7 @@ //*********************************************************// using System; -using System.Collections.Generic; using System.IO; -using System.IO.Compression; namespace Microsoft.NodejsTools.Analysis { [Serializable] diff --git a/Nodejs/Product/Analysis/Analysis/GlobalBuilder.cs b/Nodejs/Product/Analysis/Analysis/GlobalBuilder.cs index b97f1c3a8..468fb626c 100644 --- a/Nodejs/Product/Analysis/Analysis/GlobalBuilder.cs +++ b/Nodejs/Product/Analysis/Analysis/GlobalBuilder.cs @@ -15,9 +15,7 @@ //*********************************************************// using System; -using System.Collections.Generic; using System.Linq; -using System.Text; using Microsoft.NodejsTools.Analysis.Analyzer; using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; diff --git a/Nodejs/Product/Analysis/Analysis/IAnalysisSerializeAsNull.cs b/Nodejs/Product/Analysis/Analysis/IAnalysisSerializeAsNull.cs index 21f9d5cf5..965f66b28 100644 --- a/Nodejs/Product/Analysis/Analysis/IAnalysisSerializeAsNull.cs +++ b/Nodejs/Product/Analysis/Analysis/IAnalysisSerializeAsNull.cs @@ -14,7 +14,6 @@ // //*********************************************************// -using System; namespace Microsoft.NodejsTools.Analysis { internal interface IAnalysisSerializeAsNull { diff --git a/Nodejs/Product/Analysis/Analysis/IDetachableProxy.cs b/Nodejs/Product/Analysis/Analysis/IDetachableProxy.cs index c3db7c46a..9166dc29d 100644 --- a/Nodejs/Product/Analysis/Analysis/IDetachableProxy.cs +++ b/Nodejs/Product/Analysis/Analysis/IDetachableProxy.cs @@ -14,10 +14,6 @@ // //*********************************************************// -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; namespace Microsoft.NodejsTools.Analysis { interface IDetachableProxy { diff --git a/Nodejs/Product/Analysis/Analysis/JsAnalyzer.cs b/Nodejs/Product/Analysis/Analysis/JsAnalyzer.cs index a0314ce83..e4efb6022 100644 --- a/Nodejs/Product/Analysis/Analysis/JsAnalyzer.cs +++ b/Nodejs/Product/Analysis/Analysis/JsAnalyzer.cs @@ -15,15 +15,12 @@ //*********************************************************// using System; -using System.Collections.Concurrent; using System.Collections.Generic; using System.Diagnostics; using System.Diagnostics.Contracts; using System.IO; using System.Linq; using System.Reflection; -using System.Runtime.Serialization; -using System.Security; using System.Security.Cryptography; using System.Text; using System.Threading; @@ -31,7 +28,6 @@ using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; using Microsoft.VisualStudioTools; -using Microsoft.Win32; namespace Microsoft.NodejsTools.Analysis { /// diff --git a/Nodejs/Product/Analysis/Analysis/ModuleTable.cs b/Nodejs/Product/Analysis/Analysis/ModuleTable.cs index ed4f8b79a..f2111f4f6 100644 --- a/Nodejs/Product/Analysis/Analysis/ModuleTable.cs +++ b/Nodejs/Product/Analysis/Analysis/ModuleTable.cs @@ -15,13 +15,10 @@ //*********************************************************// using System; -using System.Collections.Concurrent; using System.Collections.Generic; using System.Diagnostics; using System.IO; -using System.Linq; using System.Text; -using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis { diff --git a/Nodejs/Product/Analysis/Analysis/NodejsModuleBuilder.Specializations.cs b/Nodejs/Product/Analysis/Analysis/NodejsModuleBuilder.Specializations.cs index e5539dadc..b51fc4316 100644 --- a/Nodejs/Product/Analysis/Analysis/NodejsModuleBuilder.Specializations.cs +++ b/Nodejs/Product/Analysis/Analysis/NodejsModuleBuilder.Specializations.cs @@ -17,12 +17,10 @@ using System; using System.Collections.Generic; using System.Linq; -using System.Text; using Microsoft.NodejsTools.Analysis.Analyzer; using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; using System.IO; -using System.Diagnostics; namespace Microsoft.NodejsTools.Analysis { partial class NodejsModuleBuilder { diff --git a/Nodejs/Product/Analysis/Analysis/OverloadResult.cs b/Nodejs/Product/Analysis/Analysis/OverloadResult.cs index d23f48265..c127169ee 100644 --- a/Nodejs/Product/Analysis/Analysis/OverloadResult.cs +++ b/Nodejs/Product/Analysis/Analysis/OverloadResult.cs @@ -14,11 +14,8 @@ // //*********************************************************// -using System; using System.Collections.Generic; using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Microsoft.NodejsTools.Analysis { internal class OverloadResult : IOverloadResult { diff --git a/Nodejs/Product/Analysis/Analysis/Values/ArgumentsValue.cs b/Nodejs/Product/Analysis/Analysis/Values/ArgumentsValue.cs index 535d41a40..a15b74d38 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/ArgumentsValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/ArgumentsValue.cs @@ -14,10 +14,6 @@ // //*********************************************************// -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; using Microsoft.NodejsTools.Analysis.Analyzer; using Microsoft.NodejsTools.Parsing; diff --git a/Nodejs/Product/Analysis/Analysis/Values/ArrayValue.cs b/Nodejs/Product/Analysis/Analysis/Values/ArrayValue.cs index 4014e34e9..12ca85b36 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/ArrayValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/ArrayValue.cs @@ -15,7 +15,6 @@ //*********************************************************// using System; -using System.Linq; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Values { diff --git a/Nodejs/Product/Analysis/Analysis/Values/BuiltinObjectValue.cs b/Nodejs/Product/Analysis/Analysis/Values/BuiltinObjectValue.cs index ec6296f03..ed87bd5f6 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/BuiltinObjectValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/BuiltinObjectValue.cs @@ -16,8 +16,6 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; namespace Microsoft.NodejsTools.Analysis.Values { [Serializable] diff --git a/Nodejs/Product/Analysis/Analysis/Values/ExpandoValue.cs b/Nodejs/Product/Analysis/Analysis/Values/ExpandoValue.cs index 902187c1d..1a9cbf7e2 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/ExpandoValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/ExpandoValue.cs @@ -16,7 +16,6 @@ using System; using System.Collections.Generic; -using System.Diagnostics; using Microsoft.NodejsTools.Analysis.Analyzer; using Microsoft.NodejsTools.Parsing; diff --git a/Nodejs/Product/Analysis/Analysis/Values/GeneratorFunctionInfo.cs b/Nodejs/Product/Analysis/Analysis/Values/GeneratorFunctionInfo.cs index ccb66de86..621706c21 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/GeneratorFunctionInfo.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/GeneratorFunctionInfo.cs @@ -14,8 +14,6 @@ // //*********************************************************// -using System.Collections.Generic; -using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Values { diff --git a/Nodejs/Product/Analysis/Analysis/Values/GeneratorInfo.cs b/Nodejs/Product/Analysis/Analysis/Values/GeneratorInfo.cs index f77025e49..bb3b2ee01 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/GeneratorInfo.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/GeneratorInfo.cs @@ -14,8 +14,6 @@ // //*********************************************************// -using System.Linq; -using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Values { diff --git a/Nodejs/Product/Analysis/Analysis/Values/GlobalValue.cs b/Nodejs/Product/Analysis/Analysis/Values/GlobalValue.cs index ab4b690a3..a21c49c50 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/GlobalValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/GlobalValue.cs @@ -15,9 +15,6 @@ //*********************************************************// using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; namespace Microsoft.NodejsTools.Analysis.Values { [Serializable] diff --git a/Nodejs/Product/Analysis/Analysis/Values/InheritsPrototypeValue.cs b/Nodejs/Product/Analysis/Analysis/Values/InheritsPrototypeValue.cs index daad0a9b7..26c802465 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/InheritsPrototypeValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/InheritsPrototypeValue.cs @@ -17,7 +17,6 @@ using System; using System.Collections.Generic; using System.Linq; -using System.Text; using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Analysis.Values { diff --git a/Nodejs/Product/Analysis/Analysis/Values/ObjectValue.cs b/Nodejs/Product/Analysis/Analysis/Values/ObjectValue.cs index 9e6674dc1..d5d8976fc 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/ObjectValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/ObjectValue.cs @@ -16,7 +16,6 @@ using System; using System.Collections.Generic; -using System.Diagnostics; using System.Linq; using System.Text; using Microsoft.NodejsTools.Analysis.Analyzer; diff --git a/Nodejs/Product/Analysis/Analysis/Values/SpecializedUserFunctionValue.cs b/Nodejs/Product/Analysis/Analysis/Values/SpecializedUserFunctionValue.cs index 9dea12fe9..33edd8910 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/SpecializedUserFunctionValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/SpecializedUserFunctionValue.cs @@ -15,9 +15,6 @@ //*********************************************************// using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; using Microsoft.NodejsTools.Analysis.Analyzer; using Microsoft.NodejsTools.Parsing; diff --git a/Nodejs/Product/Analysis/Analysis/Values/UserFunctionValue.cs b/Nodejs/Product/Analysis/Analysis/Values/UserFunctionValue.cs index 3b2549d9c..9a912f4cd 100644 --- a/Nodejs/Product/Analysis/Analysis/Values/UserFunctionValue.cs +++ b/Nodejs/Product/Analysis/Analysis/Values/UserFunctionValue.cs @@ -16,7 +16,6 @@ using System; using System.Collections.Generic; -using System.IO; using System.Linq; using System.Text; using Microsoft.NodejsTools.Analysis.Analyzer; diff --git a/Nodejs/Product/Analysis/AnalysisConstants.cs b/Nodejs/Product/Analysis/AnalysisConstants.cs index bc68b1cde..ce797fb4c 100644 --- a/Nodejs/Product/Analysis/AnalysisConstants.cs +++ b/Nodejs/Product/Analysis/AnalysisConstants.cs @@ -14,10 +14,6 @@ // //*********************************************************// -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; namespace Microsoft.NodejsTools { internal sealed class AnalysisConstants { diff --git a/Nodejs/Product/Analysis/ContextError.cs b/Nodejs/Product/Analysis/ContextError.cs index 95ce65a2e..764deeb0b 100644 --- a/Nodejs/Product/Analysis/ContextError.cs +++ b/Nodejs/Product/Analysis/ContextError.cs @@ -14,11 +14,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System; using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal class ContextError { // error information properties diff --git a/Nodejs/Product/Analysis/CssEncoderFallback.cs b/Nodejs/Product/Analysis/CssEncoderFallback.cs index c08f88ab3..ffd9ab9eb 100644 --- a/Nodejs/Product/Analysis/CssEncoderFallback.cs +++ b/Nodejs/Product/Analysis/CssEncoderFallback.cs @@ -14,12 +14,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System; -using System.Globalization; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { #if FALSE /// /// CssFallback encodes invalid encoder characters as Unicode escapes: diff --git a/Nodejs/Product/Analysis/Extensions.cs b/Nodejs/Product/Analysis/Extensions.cs index 12508961f..536977eae 100644 --- a/Nodejs/Product/Analysis/Extensions.cs +++ b/Nodejs/Product/Analysis/Extensions.cs @@ -33,12 +33,10 @@ public ExtensionAttribute() { } #endif -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { using System; using System.Collections.Generic; using System.Globalization; - using System.Linq; internal static class AjaxMinExtensions { diff --git a/Nodejs/Product/Analysis/JavaScript/CommaOperator.cs b/Nodejs/Product/Analysis/JavaScript/CommaOperator.cs index ed9d876dd..990cbe0ce 100644 --- a/Nodejs/Product/Analysis/JavaScript/CommaOperator.cs +++ b/Nodejs/Product/Analysis/JavaScript/CommaOperator.cs @@ -16,11 +16,8 @@ using System; using System.Collections.Generic; -using System.Globalization; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal class CommaOperator : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/ErrorSink.cs b/Nodejs/Product/Analysis/JavaScript/ErrorSink.cs index 67d65ba15..56fdd1934 100644 --- a/Nodejs/Product/Analysis/JavaScript/ErrorSink.cs +++ b/Nodejs/Product/Analysis/JavaScript/ErrorSink.cs @@ -1,9 +1,6 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; using Microsoft.Ajax.Utilities; -using Microsoft.NodejsTools.Parsing; namespace Microsoft.NodejsTools.Parsing { internal class ErrorSink { diff --git a/Nodejs/Product/Analysis/JavaScript/INameDeclaration.cs b/Nodejs/Product/Analysis/JavaScript/INameDeclaration.cs index 2cff5212b..b9b90ea11 100644 --- a/Nodejs/Product/Analysis/JavaScript/INameDeclaration.cs +++ b/Nodejs/Product/Analysis/JavaScript/INameDeclaration.cs @@ -14,14 +14,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Reflection; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal interface INameDeclaration { string Name { get; } diff --git a/Nodejs/Product/Analysis/JavaScript/INameReference.cs b/Nodejs/Product/Analysis/JavaScript/INameReference.cs index d5e24d4e0..36085c8e6 100644 --- a/Nodejs/Product/Analysis/JavaScript/INameReference.cs +++ b/Nodejs/Product/Analysis/JavaScript/INameReference.cs @@ -14,14 +14,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Reflection; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal interface INameReference { JSVariableField VariableField { get; } diff --git a/Nodejs/Product/Analysis/JavaScript/IterationStatement.cs b/Nodejs/Product/Analysis/JavaScript/IterationStatement.cs index 0f39e3f14..9ab968184 100644 --- a/Nodejs/Product/Analysis/JavaScript/IterationStatement.cs +++ b/Nodejs/Product/Analysis/JavaScript/IterationStatement.cs @@ -14,13 +14,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { using System; - using System.Collections.Generic; - using System.Globalization; - using System.IO; - using System.Text; [Serializable] internal abstract class IterationStatement : Statement diff --git a/Nodejs/Product/Analysis/JavaScript/JsAst.cs b/Nodejs/Product/Analysis/JavaScript/JsAst.cs index 2619df8a0..5f9c0ada4 100644 --- a/Nodejs/Product/Analysis/JavaScript/JsAst.cs +++ b/Nodejs/Product/Analysis/JavaScript/JsAst.cs @@ -15,7 +15,6 @@ //*********************************************************// using System; -using System.Collections.Generic; using Microsoft.NodejsTools.Analysis; namespace Microsoft.NodejsTools.Parsing { diff --git a/Nodejs/Product/Analysis/JavaScript/LexicalDeclaration.cs b/Nodejs/Product/Analysis/JavaScript/LexicalDeclaration.cs index 6e711fffa..f22dff3ce 100644 --- a/Nodejs/Product/Analysis/JavaScript/LexicalDeclaration.cs +++ b/Nodejs/Product/Analysis/JavaScript/LexicalDeclaration.cs @@ -14,13 +14,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { using System; - using System.Collections.Generic; - using System.Globalization; - using System.IO; - using System.Text; [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix", Justification = "AST statement")] [Serializable] diff --git a/Nodejs/Product/Analysis/JavaScript/Node.cs b/Nodejs/Product/Analysis/JavaScript/Node.cs index 052b06e6e..a17ca7436 100644 --- a/Nodejs/Product/Analysis/JavaScript/Node.cs +++ b/Nodejs/Product/Analysis/JavaScript/Node.cs @@ -16,11 +16,6 @@ using System; using System.Collections.Generic; -using System.Diagnostics; -using System.Globalization; -using System.IO; -using System.Text; -using Microsoft.NodejsTools.Analysis; namespace Microsoft.NodejsTools.Parsing { /// diff --git a/Nodejs/Product/Analysis/JavaScript/ObjectLiteralProperty.cs b/Nodejs/Product/Analysis/JavaScript/ObjectLiteralProperty.cs index a852669a6..4a7eb1b59 100644 --- a/Nodejs/Product/Analysis/JavaScript/ObjectLiteralProperty.cs +++ b/Nodejs/Product/Analysis/JavaScript/ObjectLiteralProperty.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal class ObjectLiteralProperty : Node { diff --git a/Nodejs/Product/Analysis/JavaScript/ResolutionVisitor.cs b/Nodejs/Product/Analysis/JavaScript/ResolutionVisitor.cs index 069fb1051..45a3d6a5f 100644 --- a/Nodejs/Product/Analysis/JavaScript/ResolutionVisitor.cs +++ b/Nodejs/Product/Analysis/JavaScript/ResolutionVisitor.cs @@ -14,15 +14,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System; using System.Collections.Generic; using System.Diagnostics; -using System.Globalization; -using System.Text; -using System.Text.RegularExpressions; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { /// /// Traverse the tree to build up scope lexically-declared names, var-declared names, /// and lookups, then resolve everything. diff --git a/Nodejs/Product/Analysis/JavaScript/SourceLocation.cs b/Nodejs/Product/Analysis/JavaScript/SourceLocation.cs index 2ccc21ed1..28151329b 100644 --- a/Nodejs/Product/Analysis/JavaScript/SourceLocation.cs +++ b/Nodejs/Product/Analysis/JavaScript/SourceLocation.cs @@ -1,11 +1,7 @@ using System; -using System.Collections.Generic; using System.Globalization; -using System.Linq; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { /// /// Represents a location in source code. /// diff --git a/Nodejs/Product/Analysis/JavaScript/Statement.cs b/Nodejs/Product/Analysis/JavaScript/Statement.cs index 398234d11..a5f49e01a 100644 --- a/Nodejs/Product/Analysis/JavaScript/Statement.cs +++ b/Nodejs/Product/Analysis/JavaScript/Statement.cs @@ -15,10 +15,8 @@ //*********************************************************// using System; -using System.Diagnostics; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal abstract class Statement : Node { diff --git a/Nodejs/Product/Analysis/JavaScript/activationobject.cs b/Nodejs/Product/Analysis/JavaScript/activationobject.cs index 5d7f09196..a14f78130 100644 --- a/Nodejs/Product/Analysis/JavaScript/activationobject.cs +++ b/Nodejs/Product/Analysis/JavaScript/activationobject.cs @@ -14,13 +14,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System; using System.Collections.Generic; -using System.Globalization; -using System.Reflection; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal abstract class ActivationObject { private bool m_useStrict;//= false; diff --git a/Nodejs/Product/Analysis/JavaScript/arrayliteral.cs b/Nodejs/Product/Analysis/JavaScript/arrayliteral.cs index c732612c9..ffeebfeab 100644 --- a/Nodejs/Product/Analysis/JavaScript/arrayliteral.cs +++ b/Nodejs/Product/Analysis/JavaScript/arrayliteral.cs @@ -16,11 +16,8 @@ using System; using System.Collections.Generic; -using System.Globalization; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class ArrayLiteral : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/binaryop.cs b/Nodejs/Product/Analysis/JavaScript/binaryop.cs index cd86130cc..32c887ab0 100644 --- a/Nodejs/Product/Analysis/JavaScript/binaryop.cs +++ b/Nodejs/Product/Analysis/JavaScript/binaryop.cs @@ -16,11 +16,8 @@ using System; using System.Collections.Generic; -using System.Globalization; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal class BinaryOperator : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/block.cs b/Nodejs/Product/Analysis/JavaScript/block.cs index 6dc794d86..f4f9d8175 100644 --- a/Nodejs/Product/Analysis/JavaScript/block.cs +++ b/Nodejs/Product/Analysis/JavaScript/block.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class Block : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/blockscope.cs b/Nodejs/Product/Analysis/JavaScript/blockscope.cs index 6c69a0acc..895e60491 100644 --- a/Nodejs/Product/Analysis/JavaScript/blockscope.cs +++ b/Nodejs/Product/Analysis/JavaScript/blockscope.cs @@ -14,11 +14,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System; -using System.Reflection; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal class BlockScope : ActivationObject { public BlockScope(Statement node, ActivationObject parent, ErrorSink errorSink) diff --git a/Nodejs/Product/Analysis/JavaScript/break.cs b/Nodejs/Product/Analysis/JavaScript/break.cs index 9ccb6ad30..7fdebb91a 100644 --- a/Nodejs/Product/Analysis/JavaScript/break.cs +++ b/Nodejs/Product/Analysis/JavaScript/break.cs @@ -15,10 +15,8 @@ // limitations under the License. using System; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class Break : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/call.cs b/Nodejs/Product/Analysis/JavaScript/call.cs index 51b1718b6..083fe796a 100644 --- a/Nodejs/Product/Analysis/JavaScript/call.cs +++ b/Nodejs/Product/Analysis/JavaScript/call.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class CallNode : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/catchscope.cs b/Nodejs/Product/Analysis/JavaScript/catchscope.cs index c04cc1111..22cfe7876 100644 --- a/Nodejs/Product/Analysis/JavaScript/catchscope.cs +++ b/Nodejs/Product/Analysis/JavaScript/catchscope.cs @@ -14,11 +14,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System.Collections; -using System.Reflection; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal sealed class CatchScope : BlockScope { diff --git a/Nodejs/Product/Analysis/JavaScript/codesettings.cs b/Nodejs/Product/Analysis/JavaScript/codesettings.cs index df6b544e2..650820f4d 100644 --- a/Nodejs/Product/Analysis/JavaScript/codesettings.cs +++ b/Nodejs/Product/Analysis/JavaScript/codesettings.cs @@ -16,11 +16,9 @@ using System; using System.Collections.Generic; -using System.Collections.ObjectModel; using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { /// /// Enum describing the type of input expected /// diff --git a/Nodejs/Product/Analysis/JavaScript/conditional.cs b/Nodejs/Product/Analysis/JavaScript/conditional.cs index 585748704..13f8ea278 100644 --- a/Nodejs/Product/Analysis/JavaScript/conditional.cs +++ b/Nodejs/Product/Analysis/JavaScript/conditional.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class Conditional : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/const.cs b/Nodejs/Product/Analysis/JavaScript/const.cs index 6e70c3dc7..867ea5662 100644 --- a/Nodejs/Product/Analysis/JavaScript/const.cs +++ b/Nodejs/Product/Analysis/JavaScript/const.cs @@ -15,11 +15,8 @@ // limitations under the License. using System; -using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { /// /// Old-style const-statement, pre-ES6, for those browsers that basically implemented /// a var that can't be assigned to outside the declaration. Have to set the diff --git a/Nodejs/Product/Analysis/JavaScript/constantwrapper.cs b/Nodejs/Product/Analysis/JavaScript/constantwrapper.cs index 86034e9d8..22cbb81bf 100644 --- a/Nodejs/Product/Analysis/JavaScript/constantwrapper.cs +++ b/Nodejs/Product/Analysis/JavaScript/constantwrapper.cs @@ -15,12 +15,9 @@ // limitations under the License. using System; -using System.Globalization; -using System.Text; using System.Text.RegularExpressions; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal class ConstantWrapper : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/continue.cs b/Nodejs/Product/Analysis/JavaScript/continue.cs index 833d39af0..02258ee7b 100644 --- a/Nodejs/Product/Analysis/JavaScript/continue.cs +++ b/Nodejs/Product/Analysis/JavaScript/continue.cs @@ -15,10 +15,8 @@ // limitations under the License. using System; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class ContinueNode : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/declaration.cs b/Nodejs/Product/Analysis/JavaScript/declaration.cs index 4232da954..6cee7f268 100644 --- a/Nodejs/Product/Analysis/JavaScript/declaration.cs +++ b/Nodejs/Product/Analysis/JavaScript/declaration.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix", Justification = "AST statement")] [Serializable] internal abstract class Declaration : Statement, IEnumerable diff --git a/Nodejs/Product/Analysis/JavaScript/directiveprologue.cs b/Nodejs/Product/Analysis/JavaScript/directiveprologue.cs index 4dac1ea57..44bb473cc 100644 --- a/Nodejs/Product/Analysis/JavaScript/directiveprologue.cs +++ b/Nodejs/Product/Analysis/JavaScript/directiveprologue.cs @@ -15,11 +15,8 @@ // limitations under the License. using System; -using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal class DirectivePrologue : ConstantWrapper { diff --git a/Nodejs/Product/Analysis/JavaScript/dowhile.cs b/Nodejs/Product/Analysis/JavaScript/dowhile.cs index 31b0e5156..23736784f 100644 --- a/Nodejs/Product/Analysis/JavaScript/dowhile.cs +++ b/Nodejs/Product/Analysis/JavaScript/dowhile.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class DoWhile : IterationStatement { diff --git a/Nodejs/Product/Analysis/JavaScript/emptystatement.cs b/Nodejs/Product/Analysis/JavaScript/emptystatement.cs index 4d4ca2949..21bd808eb 100644 --- a/Nodejs/Product/Analysis/JavaScript/emptystatement.cs +++ b/Nodejs/Product/Analysis/JavaScript/emptystatement.cs @@ -15,12 +15,8 @@ // limitations under the License. using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal class EmptyStatement : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/for.cs b/Nodejs/Product/Analysis/JavaScript/for.cs index 72ad92a5f..207e13034 100644 --- a/Nodejs/Product/Analysis/JavaScript/for.cs +++ b/Nodejs/Product/Analysis/JavaScript/for.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class ForNode : IterationStatement { diff --git a/Nodejs/Product/Analysis/JavaScript/forin.cs b/Nodejs/Product/Analysis/JavaScript/forin.cs index f88b1896e..4b6b66b4a 100644 --- a/Nodejs/Product/Analysis/JavaScript/forin.cs +++ b/Nodejs/Product/Analysis/JavaScript/forin.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class ForIn : IterationStatement { diff --git a/Nodejs/Product/Analysis/JavaScript/functionobject.cs b/Nodejs/Product/Analysis/JavaScript/functionobject.cs index 658b1fe13..b2710ef3d 100644 --- a/Nodejs/Product/Analysis/JavaScript/functionobject.cs +++ b/Nodejs/Product/Analysis/JavaScript/functionobject.cs @@ -16,9 +16,6 @@ using System; using System.Collections.Generic; -using System.Globalization; -using System.Reflection; -using System.Text; namespace Microsoft.NodejsTools.Parsing { [Serializable] diff --git a/Nodejs/Product/Analysis/JavaScript/functionscope.cs b/Nodejs/Product/Analysis/JavaScript/functionscope.cs index 08a3fc43a..b11de89e5 100644 --- a/Nodejs/Product/Analysis/JavaScript/functionscope.cs +++ b/Nodejs/Product/Analysis/JavaScript/functionscope.cs @@ -14,12 +14,9 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System; using System.Collections.Generic; -using System.Reflection; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal sealed class FunctionScope : ActivationObject { public FunctionObject FunctionObject { get; private set; } diff --git a/Nodejs/Product/Analysis/JavaScript/gettersetter.cs b/Nodejs/Product/Analysis/JavaScript/gettersetter.cs index 85fe3bf55..832892e9c 100644 --- a/Nodejs/Product/Analysis/JavaScript/gettersetter.cs +++ b/Nodejs/Product/Analysis/JavaScript/gettersetter.cs @@ -15,10 +15,8 @@ // limitations under the License. using System; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class GetterSetter : ObjectLiteralField { diff --git a/Nodejs/Product/Analysis/JavaScript/globalscope.cs b/Nodejs/Product/Analysis/JavaScript/globalscope.cs index dc9ca785c..766f48fba 100644 --- a/Nodejs/Product/Analysis/JavaScript/globalscope.cs +++ b/Nodejs/Product/Analysis/JavaScript/globalscope.cs @@ -16,11 +16,8 @@ using System; using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Reflection; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal sealed class GlobalScope : ActivationObject { private HashSet m_globalProperties; diff --git a/Nodejs/Product/Analysis/JavaScript/if.cs b/Nodejs/Product/Analysis/JavaScript/if.cs index b359da66d..0e1431ae9 100644 --- a/Nodejs/Product/Analysis/JavaScript/if.cs +++ b/Nodejs/Product/Analysis/JavaScript/if.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class IfNode : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/jscriptexception.cs b/Nodejs/Product/Analysis/JavaScript/jscriptexception.cs index 15f600bba..3d70d5938 100644 --- a/Nodejs/Product/Analysis/JavaScript/jscriptexception.cs +++ b/Nodejs/Product/Analysis/JavaScript/jscriptexception.cs @@ -15,15 +15,12 @@ // limitations under the License. using System; -using System.Diagnostics; -using System.Globalization; using System.Runtime.Serialization; using System.Security; using System.Security.Permissions; using Microsoft.Ajax.Utilities; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { //------------------------------------------------------------------------------------------------------- // JScriptException diff --git a/Nodejs/Product/Analysis/JavaScript/jsscanner.cs b/Nodejs/Product/Analysis/JavaScript/jsscanner.cs index ec6e23a3f..0f679420a 100644 --- a/Nodejs/Product/Analysis/JavaScript/jsscanner.cs +++ b/Nodejs/Product/Analysis/JavaScript/jsscanner.cs @@ -16,13 +16,10 @@ using System; using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Diagnostics; using System.Globalization; using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal sealed class JSScanner { #region static fields diff --git a/Nodejs/Product/Analysis/JavaScript/jsvariablefield.cs b/Nodejs/Product/Analysis/JavaScript/jsvariablefield.cs index bc4c206bf..16451e3ca 100644 --- a/Nodejs/Product/Analysis/JavaScript/jsvariablefield.cs +++ b/Nodejs/Product/Analysis/JavaScript/jsvariablefield.cs @@ -15,12 +15,8 @@ // limitations under the License. using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.Reflection; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { /// /// Field type enumeration /// diff --git a/Nodejs/Product/Analysis/JavaScript/labeledstatement.cs b/Nodejs/Product/Analysis/JavaScript/labeledstatement.cs index 2dad0ead5..e94420383 100644 --- a/Nodejs/Product/Analysis/JavaScript/labeledstatement.cs +++ b/Nodejs/Product/Analysis/JavaScript/labeledstatement.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class LabeledStatement : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/member.cs b/Nodejs/Product/Analysis/JavaScript/member.cs index 16f5da618..b83b3d0da 100644 --- a/Nodejs/Product/Analysis/JavaScript/member.cs +++ b/Nodejs/Product/Analysis/JavaScript/member.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class Member : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/objectliteral.cs b/Nodejs/Product/Analysis/JavaScript/objectliteral.cs index da5cd986d..eefd123be 100644 --- a/Nodejs/Product/Analysis/JavaScript/objectliteral.cs +++ b/Nodejs/Product/Analysis/JavaScript/objectliteral.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class ObjectLiteral : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/regexpliteral.cs b/Nodejs/Product/Analysis/JavaScript/regexpliteral.cs index 256c040d2..756549dd9 100644 --- a/Nodejs/Product/Analysis/JavaScript/regexpliteral.cs +++ b/Nodejs/Product/Analysis/JavaScript/regexpliteral.cs @@ -15,11 +15,8 @@ // limitations under the License. using System; -using System.Globalization; -using System.Text.RegularExpressions; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class RegExpLiteral : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/return.cs b/Nodejs/Product/Analysis/JavaScript/return.cs index e03986af0..bade5a0c7 100644 --- a/Nodejs/Product/Analysis/JavaScript/return.cs +++ b/Nodejs/Product/Analysis/JavaScript/return.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class ReturnNode : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/switch.cs b/Nodejs/Product/Analysis/JavaScript/switch.cs index 80194657f..0094de10d 100644 --- a/Nodejs/Product/Analysis/JavaScript/switch.cs +++ b/Nodejs/Product/Analysis/JavaScript/switch.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class Switch : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/switchcase.cs b/Nodejs/Product/Analysis/JavaScript/switchcase.cs index efb28b858..a77be18c9 100644 --- a/Nodejs/Product/Analysis/JavaScript/switchcase.cs +++ b/Nodejs/Product/Analysis/JavaScript/switchcase.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class SwitchCase : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/throw.cs b/Nodejs/Product/Analysis/JavaScript/throw.cs index bb51e535e..a0ca3d850 100644 --- a/Nodejs/Product/Analysis/JavaScript/throw.cs +++ b/Nodejs/Product/Analysis/JavaScript/throw.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class ThrowNode : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/try.cs b/Nodejs/Product/Analysis/JavaScript/try.cs index 3623541e3..4d4859752 100644 --- a/Nodejs/Product/Analysis/JavaScript/try.cs +++ b/Nodejs/Product/Analysis/JavaScript/try.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class TryNode : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/unaryop.cs b/Nodejs/Product/Analysis/JavaScript/unaryop.cs index 1cf764d18..d365c645a 100644 --- a/Nodejs/Product/Analysis/JavaScript/unaryop.cs +++ b/Nodejs/Product/Analysis/JavaScript/unaryop.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Diagnostics; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal class UnaryOperator : Expression { diff --git a/Nodejs/Product/Analysis/JavaScript/var.cs b/Nodejs/Product/Analysis/JavaScript/var.cs index 60270caba..905e0e661 100644 --- a/Nodejs/Product/Analysis/JavaScript/var.cs +++ b/Nodejs/Product/Analysis/JavaScript/var.cs @@ -15,11 +15,8 @@ // limitations under the License. using System; -using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { /// /// Summary description for variablestatement. /// diff --git a/Nodejs/Product/Analysis/JavaScript/variabledeclaration.cs b/Nodejs/Product/Analysis/JavaScript/variabledeclaration.cs index 1089ba72e..ef428d165 100644 --- a/Nodejs/Product/Analysis/JavaScript/variabledeclaration.cs +++ b/Nodejs/Product/Analysis/JavaScript/variabledeclaration.cs @@ -16,11 +16,8 @@ using System; using System.Collections.Generic; -using System.Reflection; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class VariableDeclaration : Statement, INameDeclaration, INameReference { diff --git a/Nodejs/Product/Analysis/JavaScript/while.cs b/Nodejs/Product/Analysis/JavaScript/while.cs index 2b1067bf0..5c6c7b2cf 100644 --- a/Nodejs/Product/Analysis/JavaScript/while.cs +++ b/Nodejs/Product/Analysis/JavaScript/while.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class WhileNode : IterationStatement { diff --git a/Nodejs/Product/Analysis/JavaScript/with.cs b/Nodejs/Product/Analysis/JavaScript/with.cs index a40fdc00d..18d88e719 100644 --- a/Nodejs/Product/Analysis/JavaScript/with.cs +++ b/Nodejs/Product/Analysis/JavaScript/with.cs @@ -16,10 +16,8 @@ using System; using System.Collections.Generic; -using System.Text; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { [Serializable] internal sealed class WithNode : Statement { diff --git a/Nodejs/Product/Analysis/JavaScript/withscope.cs b/Nodejs/Product/Analysis/JavaScript/withscope.cs index 191e1433a..88596f104 100644 --- a/Nodejs/Product/Analysis/JavaScript/withscope.cs +++ b/Nodejs/Product/Analysis/JavaScript/withscope.cs @@ -14,10 +14,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -using System.Reflection; -namespace Microsoft.NodejsTools.Parsing -{ +namespace Microsoft.NodejsTools.Parsing { internal sealed class WithScope : BlockScope { public WithScope(Statement node, ActivationObject parent, ErrorSink errorSink) diff --git a/Nodejs/Product/Analysis/Properties/AssemblyInfo.cs b/Nodejs/Product/Analysis/Properties/AssemblyInfo.cs index c2c7e572e..32163dd82 100644 --- a/Nodejs/Product/Analysis/Properties/AssemblyInfo.cs +++ b/Nodejs/Product/Analysis/Properties/AssemblyInfo.cs @@ -17,8 +17,6 @@ using System.Reflection; using System.Resources; using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; -using System.Security; // // General Information about an assembly is controlled through the following diff --git a/Nodejs/Product/AssemblyInfoCommon.cs b/Nodejs/Product/AssemblyInfoCommon.cs index 531b00e36..83ce8eaa9 100644 --- a/Nodejs/Product/AssemblyInfoCommon.cs +++ b/Nodejs/Product/AssemblyInfoCommon.cs @@ -3,8 +3,6 @@ // using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; // The following assembly information is common to all Node.js Tools for Visual Studio assemblies. // If you get compiler errors CS0579, "Duplicate '' attribute", check your diff --git a/Nodejs/Product/InteractiveWindow/InteractiveWindow.vsct b/Nodejs/Product/InteractiveWindow/InteractiveWindow.vsct index 6e222a85b..ed2668d9b 100644 --- a/Nodejs/Product/InteractiveWindow/InteractiveWindow.vsct +++ b/Nodejs/Product/InteractiveWindow/InteractiveWindow.vsct @@ -297,12 +297,13 @@ - + + diff --git a/Nodejs/Product/LogConverter/EtlNativeMethods.cs b/Nodejs/Product/LogConverter/EtlNativeMethods.cs index b3cd24584..1fb1780c7 100644 --- a/Nodejs/Product/LogConverter/EtlNativeMethods.cs +++ b/Nodejs/Product/LogConverter/EtlNativeMethods.cs @@ -15,7 +15,6 @@ //*********************************************************// using System; -using System.ComponentModel; using System.Runtime.InteropServices; namespace Microsoft.NodejsTools.LogGeneration { diff --git a/Nodejs/Product/Nodejs/AzureSolutionListener.cs b/Nodejs/Product/Nodejs/AzureSolutionListener.cs index 7c58cb8b4..a1422a7e0 100644 --- a/Nodejs/Product/Nodejs/AzureSolutionListener.cs +++ b/Nodejs/Product/Nodejs/AzureSolutionListener.cs @@ -16,8 +16,6 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio; using ShellConstants = Microsoft.VisualStudio.Shell.Interop.Constants; diff --git a/Nodejs/Product/Nodejs/BaseNodeProjectFactory.cs b/Nodejs/Product/Nodejs/BaseNodeProjectFactory.cs index 484bdf7ec..73cd82d41 100644 --- a/Nodejs/Product/Nodejs/BaseNodeProjectFactory.cs +++ b/Nodejs/Product/Nodejs/BaseNodeProjectFactory.cs @@ -21,7 +21,6 @@ using Microsoft.NodejsTools.Project; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudioTools.Project; -using IOleServiceProvider = Microsoft.VisualStudio.OLE.Interop.IServiceProvider; using SR = Microsoft.NodejsTools.Project.SR; namespace Microsoft.NodejsTools { diff --git a/Nodejs/Product/Nodejs/Classifier/NodejsClassifier.cs b/Nodejs/Product/Nodejs/Classifier/NodejsClassifier.cs index 015150185..45a567200 100644 --- a/Nodejs/Product/Nodejs/Classifier/NodejsClassifier.cs +++ b/Nodejs/Product/Nodejs/Classifier/NodejsClassifier.cs @@ -19,9 +19,6 @@ using System.Diagnostics; using System.Diagnostics.Contracts; using System.Linq; -using System.Text; -using Microsoft.NodejsTools; -using Microsoft.NodejsTools.Classifier; using Microsoft.NodejsTools.Parsing; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Classification; diff --git a/Nodejs/Product/Nodejs/Classifier/NodejsClassifierProvider.cs b/Nodejs/Product/Nodejs/Classifier/NodejsClassifierProvider.cs index 8dd4cd60a..a48709f4a 100644 --- a/Nodejs/Product/Nodejs/Classifier/NodejsClassifierProvider.cs +++ b/Nodejs/Product/Nodejs/Classifier/NodejsClassifierProvider.cs @@ -16,9 +16,6 @@ using System.Collections.Generic; using System.ComponentModel.Composition; -using System.Windows.Media; -using Microsoft.NodejsTools; -using Microsoft.NodejsTools.Classifier; using Microsoft.NodejsTools.Parsing; using Microsoft.VisualStudio.Language.StandardClassification; using Microsoft.VisualStudio.Text; diff --git a/Nodejs/Product/Nodejs/Classifier/NodejsPredefinedClassificationTypeNames.cs b/Nodejs/Product/Nodejs/Classifier/NodejsPredefinedClassificationTypeNames.cs index ebeeecb5b..dccf4a7ba 100644 --- a/Nodejs/Product/Nodejs/Classifier/NodejsPredefinedClassificationTypeNames.cs +++ b/Nodejs/Product/Nodejs/Classifier/NodejsPredefinedClassificationTypeNames.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Microsoft.NodejsTools.Classifier { +namespace Microsoft.NodejsTools.Classifier { class NodejsPredefinedClassificationTypeNames { /// /// Open grouping classification. Used for (, [, {, ), ], and }... A subtype of the Python diff --git a/Nodejs/Product/Nodejs/Classifier/TokenCache.cs b/Nodejs/Product/Nodejs/Classifier/TokenCache.cs index a7887649c..eb1f8a1c2 100644 --- a/Nodejs/Product/Nodejs/Classifier/TokenCache.cs +++ b/Nodejs/Product/Nodejs/Classifier/TokenCache.cs @@ -14,13 +14,9 @@ // //*********************************************************// -using System.Collections.Generic; -using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Tagging; -using System.Diagnostics.Contracts; using System.Diagnostics; -using System.Collections; using System; using System.Text; using Microsoft.VisualStudioTools.Project; diff --git a/Nodejs/Product/Nodejs/ClassifierProviderMetadata.cs b/Nodejs/Product/Nodejs/ClassifierProviderMetadata.cs index b880369e7..f40bab202 100644 --- a/Nodejs/Product/Nodejs/ClassifierProviderMetadata.cs +++ b/Nodejs/Product/Nodejs/ClassifierProviderMetadata.cs @@ -14,7 +14,6 @@ // //*********************************************************// -using System; using System.Collections.Generic; namespace Microsoft.NodejsTools { diff --git a/Nodejs/Product/Nodejs/Commands/OpenRemoteDebugDocumentationCommand.cs b/Nodejs/Product/Nodejs/Commands/OpenRemoteDebugDocumentationCommand.cs index b74c51d50..6113d76e6 100644 --- a/Nodejs/Product/Nodejs/Commands/OpenRemoteDebugDocumentationCommand.cs +++ b/Nodejs/Product/Nodejs/Commands/OpenRemoteDebugDocumentationCommand.cs @@ -16,8 +16,6 @@ using System; using System.Diagnostics; -using System.IO; -using System.Windows.Forms; using Microsoft.VisualStudioTools; namespace Microsoft.NodejsTools.Commands { diff --git a/Nodejs/Product/Nodejs/Debugger/Communication/DebuggerConnection.cs b/Nodejs/Product/Nodejs/Debugger/Communication/DebuggerConnection.cs index c6b7acc2f..85ad57498 100644 --- a/Nodejs/Product/Nodejs/Debugger/Communication/DebuggerConnection.cs +++ b/Nodejs/Product/Nodejs/Debugger/Communication/DebuggerConnection.cs @@ -15,7 +15,6 @@ //*********************************************************// using System; -using System.Diagnostics; using System.IO; using System.Net.Sockets; using System.Text; diff --git a/Nodejs/Product/Nodejs/Debugger/DebugEngine/AD7EvalErrorProperty.cs b/Nodejs/Product/Nodejs/Debugger/DebugEngine/AD7EvalErrorProperty.cs index 627ea7da3..70180c53e 100644 --- a/Nodejs/Product/Nodejs/Debugger/DebugEngine/AD7EvalErrorProperty.cs +++ b/Nodejs/Product/Nodejs/Debugger/DebugEngine/AD7EvalErrorProperty.cs @@ -15,15 +15,8 @@ //*********************************************************// using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.NodejsTools.Debugger.Commands; -using Microsoft.NodejsTools.Debugger.Serialization; using Microsoft.VisualStudio; using Microsoft.VisualStudio.Debugger.Interop; -using Microsoft.VisualStudioTools; namespace Microsoft.NodejsTools.Debugger.DebugEngine { internal class AD7EvalErrorProperty : IDebugProperty2 { diff --git a/Nodejs/Product/Nodejs/Debugger/DebugEngine/UncalculatedAD7Expression.cs b/Nodejs/Product/Nodejs/Debugger/DebugEngine/UncalculatedAD7Expression.cs index 27ce9e976..117ae4fd4 100644 --- a/Nodejs/Product/Nodejs/Debugger/DebugEngine/UncalculatedAD7Expression.cs +++ b/Nodejs/Product/Nodejs/Debugger/DebugEngine/UncalculatedAD7Expression.cs @@ -15,7 +15,6 @@ //*********************************************************// using System; -using System.Linq; using System.Threading; using Microsoft.NodejsTools.Debugger.Commands; using Microsoft.VisualStudio; diff --git a/Nodejs/Product/Nodejs/Debugger/ExceptionHandler.cs b/Nodejs/Product/Nodejs/Debugger/ExceptionHandler.cs index 370bd9286..72194a955 100644 --- a/Nodejs/Product/Nodejs/Debugger/ExceptionHandler.cs +++ b/Nodejs/Product/Nodejs/Debugger/ExceptionHandler.cs @@ -84,117 +84,14 @@ public ExceptionHitTreatment GetExceptionHitTreatment(string exceptionName) { } private Dictionary GetDefaultExceptionTreatments() { - // Keep exception types in sync with those declared in ProvideDebugExceptionAttribute's in NodePackage.Debugger.cs -#if FALSE - string[] exceptionTypes = { - }; -#endif - - string[] breakNeverTypes = { - // should probably be break on unhandled when we have just my code support - "Error", - "Error(EACCES)", - "Error(EADDRINUSE)", - "Error(EADDRNOTAVAIL)", - "Error(EAFNOSUPPORT)", - "Error(EAGAIN)", - "Error(EWOULDBLOCK)", - "Error(EALREADY)", - "Error(EBADF)", - "Error(EBADMSG)", - "Error(EBUSY)", - "Error(ECANCELED)", - "Error(ECHILD)", - "Error(ECONNABORTED)", - "Error(ECONNREFUSED)", - "Error(ECONNRESET)", - "Error(EDEADLK)", - "Error(EDESTADDRREQ)", - "Error(EDOM)", - "Error(EEXIST)", - "Error(EFAULT)", - "Error(EFBIG)", - "Error(EHOSTUNREACH)", - "Error(EIDRM)", - "Error(EILSEQ)", - "Error(EINPROGRESS)", - "Error(EINTR)", - "Error(EINVAL)", - "Error(EIO)", - "Error(EISCONN)", - "Error(EISDIR)", - "Error(ELOOP)", - "Error(EMFILE)", - "Error(EMLINK)", - "Error(EMSGSIZE)", - "Error(ENAMETOOLONG)", - "Error(ENETDOWN)", - "Error(ENETRESET)", - "Error(ENETUNREACH)", - "Error(ENFILE)", - "Error(ENOBUFS)", - "Error(ENODATA)", - "Error(ENODEV)", - "Error(ENOENT)", - "Error(ENOEXEC)", - "Error(ENOLINK)", - "Error(ENOLCK)", - "Error(ENOMEM)", - "Error(ENOMSG)", - "Error(ENOPROTOOPT)", - "Error(ENOSPC)", - "Error(ENOSR)", - "Error(ENOSTR)", - "Error(ENOSYS)", - "Error(ENOTCONN)", - "Error(ENOTDIR)", - "Error(ENOTEMPTY)", - "Error(ENOTSOCK)", - "Error(ENOTSUP)", - "Error(ENOTTY)", - "Error(ENXIO)", - "Error(EOVERFLOW)", - "Error(EPERM)", - "Error(EPIPE)", - "Error(EPROTO)", - "Error(EPROTONOSUPPORT)", - "Error(EPROTOTYPE)", - "Error(ERANGE)", - "Error(EROFS)", - "Error(ESPIPE)", - "Error(ESRCH)", - "Error(ETIME)", - "Error(ETIMEDOUT)", - "Error(ETXTBSY)", - "Error(EXDEV)", - "Error(MODULE_NOT_FOUND)", - "Error(SIGHUP)", - "Error(SIGINT)", - "Error(SIGILL)", - "Error(SIGABRT)", - "Error(SIGFPE)", - "Error(SIGKILL)", - "Error(SIGSEGV)", - "Error(SIGTERM)", - "Error(SIGBREAK)", - "Error(SIGWINCH)", - "EvalError", - "RangeError", - "ReferenceError", - "SyntaxError", - "TypeError", - "URIError", - }; - var defaultExceptionTreatments = new Dictionary(); -#if FALSE - foreach (string exceptionType in exceptionTypes) { - defaultExceptionTreatments[exceptionType] = ExceptionHitTreatment.BreakAlways; - } -#endif - foreach (string exceptionType in breakNeverTypes) { - defaultExceptionTreatments[exceptionType] = ExceptionHitTreatment.BreakNever; + // Get exception names from in NodePackage.Debugger.cs + foreach (var attr in System.Attribute.GetCustomAttributes(typeof(NodejsPackage))) { + var debugAttr = attr as ProvideNodeDebugExceptionAttribute; + if (debugAttr != null && !string.IsNullOrEmpty(debugAttr.ExceptionName)) { + defaultExceptionTreatments[debugAttr.ExceptionName] = ExceptionHitTreatment.BreakNever; + } } return defaultExceptionTreatments; diff --git a/Nodejs/Product/Nodejs/Debugger/NodeDebugProvider.cs b/Nodejs/Product/Nodejs/Debugger/NodeDebugProvider.cs new file mode 100644 index 000000000..2a62159f9 --- /dev/null +++ b/Nodejs/Product/Nodejs/Debugger/NodeDebugProvider.cs @@ -0,0 +1,94 @@ +//*********************************************************// +// Copyright (c) Microsoft. All rights reserved. +// +// Apache 2.0 License +// +// You may obtain a copy of the License at +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +// implied. See the License for the specific language governing +// permissions and limitations under the License. +// +//*********************************************************// + +#if DEV15 + +using System; +using System.ComponentModel.Composition; +using Microsoft.VisualStudio.Shell.Interop; +using Microsoft.VisualStudio.Workspace; +using Microsoft.VisualStudio.Workspace.Debug; +using Microsoft.VisualStudio.Workspace.Extensions.VS.Debug; + +namespace Microsoft.NodejsTools.Debugger { + /// + /// Extension to Vs Launch Debugger to handle js files from a Node Js project + /// + [ExportVsDebugLaunchTarget(ProviderType, new string[] { ".js" }, ProviderPriority.Highest)] + internal class NodeJsDebugLaunchProvider : IVsDebugLaunchTargetProvider { + private const string ProviderType = "6C01D598-DE83-4D5B-B7E5-757FBA8443DD"; + private const string NodeExeKey = "nodeExe"; + + private const string NodeJsSchema = +@"{ + ""definitions"": { + ""nodejs"": { + ""type"": ""object"", + ""properties"": { + ""type"": {""type"": ""string"",""enum"": [ ""nodejs"" ]}, + ""nodeExe"": { ""type"": ""string"" } + } + }, + ""nodejsFile"": { + ""allOf"": [ + { ""$ref"": ""#/definitions/default"" }, + { ""$ref"": ""#/definitions/nodejs"" } + ] + } + }, + ""defaults"": { + ""nodejs"": { ""$ref"": ""#/definitions/nodejs"" } + }, + ""configuration"": ""#/definitions/nodejsFile"" +}"; + + public void SetupDebugTargetInfo(ref VsDebugTargetInfo vsDebugTargetInfo, DebugLaunchActionContext debugLaunchContext) { + string target = vsDebugTargetInfo.bstrExe; + vsDebugTargetInfo.bstrExe = debugLaunchContext.LaunchConfiguration.GetValue(NodeExeKey, Nodejs.GetPathToNodeExecutableFromEnvironment()); + string nodeJsArgs = vsDebugTargetInfo.bstrArg; + vsDebugTargetInfo.bstrArg = "\"" + target + "\""; + if (!string.IsNullOrEmpty(nodeJsArgs)) + { + vsDebugTargetInfo.bstrArg += " "; + vsDebugTargetInfo.bstrArg += nodeJsArgs; + } + + vsDebugTargetInfo.clsidCustom = DebugEngine.AD7Engine.DebugEngineGuid; + vsDebugTargetInfo.bstrOptions = "WAIT_ON_ABNORMAL_EXIT=true"; + vsDebugTargetInfo.grfLaunch = (uint)__VSDBGLAUNCHFLAGS.DBGLAUNCH_StopDebuggingOnEnd; + } + + [ExportLaunchConfigurationProvider( + LaunchConfigurationProviderType, + new string[] { ".js" }, + "nodejs", + NodeJsSchema)] + public class LaunchConfigurationProvider : ILaunchConfigurationProvider { + private const string LaunchConfigurationProviderType = "1DB21619-2C53-4BEF-84E4-B1C4D6771A51"; + + public void CustomizeLaunchConfiguration(DebugLaunchActionContext debugLaunchActionContext, IPropertySettings launchSettings) { + // noop + } + + /// + public bool IsDebugLaunchActionSupported(DebugLaunchActionContext debugLaunchActionContext) { + throw new NotImplementedException(); + } + } + } +} + +#endif \ No newline at end of file diff --git a/Nodejs/Product/Nodejs/Editor/BraceCompletion/BraceCompletionContext.cs b/Nodejs/Product/Nodejs/Editor/BraceCompletion/BraceCompletionContext.cs index 1ae3f7040..c6195bc4c 100644 --- a/Nodejs/Product/Nodejs/Editor/BraceCompletion/BraceCompletionContext.cs +++ b/Nodejs/Product/Nodejs/Editor/BraceCompletion/BraceCompletionContext.cs @@ -13,14 +13,12 @@ // permissions and limitations under the License. // //*********************************************************// -using System; using System.ComponentModel.Composition; using System.Diagnostics; using Microsoft.NodejsTools.Formatting; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.BraceCompletion; using Microsoft.VisualStudio.Text.Editor; -using Microsoft.VisualStudio.Text.Editor.OptionsExtensionMethods; using Microsoft.VisualStudioTools; namespace Microsoft.NodejsTools.Editor.BraceCompletion { diff --git a/Nodejs/Product/Nodejs/Extensions.cs b/Nodejs/Product/Nodejs/Extensions.cs index 96204341f..b27b56d82 100644 --- a/Nodejs/Product/Nodejs/Extensions.cs +++ b/Nodejs/Product/Nodejs/Extensions.cs @@ -19,7 +19,6 @@ using System.Diagnostics; using System.IO; using System.Text; -using Microsoft.NodejsTools; using Microsoft.NodejsTools.Analysis; using Microsoft.NodejsTools.Classifier; using Microsoft.NodejsTools.Editor.Core; diff --git a/Nodejs/Product/Nodejs/Intellisense/AnalysisQueue.cs b/Nodejs/Product/Nodejs/Intellisense/AnalysisQueue.cs index 26cf67abb..db81d7076 100644 --- a/Nodejs/Product/Nodejs/Intellisense/AnalysisQueue.cs +++ b/Nodejs/Product/Nodejs/Intellisense/AnalysisQueue.cs @@ -17,9 +17,7 @@ using System; using System.Collections.Generic; using System.Diagnostics; -using System.IO; using System.Threading; -using System.Threading.Tasks; using Microsoft.NodejsTools.Analysis; using Microsoft.NodejsTools.Project; using Microsoft.VisualStudio.Shell.Interop; diff --git a/Nodejs/Product/Nodejs/Intellisense/CollectingErrorSink.cs b/Nodejs/Product/Nodejs/Intellisense/CollectingErrorSink.cs index f607adacd..595982192 100644 --- a/Nodejs/Product/Nodejs/Intellisense/CollectingErrorSink.cs +++ b/Nodejs/Product/Nodejs/Intellisense/CollectingErrorSink.cs @@ -14,7 +14,6 @@ // //*********************************************************// -using System; using System.Collections.Generic; namespace Microsoft.NodejsTools.Parsing { diff --git a/Nodejs/Product/Nodejs/Intellisense/CompletionAnalysis.cs b/Nodejs/Product/Nodejs/Intellisense/CompletionAnalysis.cs index 8283f0ff9..82c459a2e 100644 --- a/Nodejs/Product/Nodejs/Intellisense/CompletionAnalysis.cs +++ b/Nodejs/Product/Nodejs/Intellisense/CompletionAnalysis.cs @@ -19,9 +19,7 @@ using System.Linq; using Microsoft.NodejsTools.Analysis; using Microsoft.VisualStudio.Language.Intellisense; -using Microsoft.VisualStudio.Language.StandardClassification; using Microsoft.VisualStudio.Text; -using Microsoft.VisualStudio.Text.Classification; namespace Microsoft.NodejsTools.Intellisense { /// diff --git a/Nodejs/Product/Nodejs/Intellisense/CompletionInfo.cs b/Nodejs/Product/Nodejs/Intellisense/CompletionInfo.cs index f4d14dcc1..6c12fa3fd 100644 --- a/Nodejs/Product/Nodejs/Intellisense/CompletionInfo.cs +++ b/Nodejs/Product/Nodejs/Intellisense/CompletionInfo.cs @@ -14,14 +14,7 @@ // //*********************************************************// -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using System.Windows.Media; -using Microsoft.VisualStudio.Language.Intellisense; -using Microsoft.VisualStudioTools.Project; namespace Microsoft.NodejsTools.Intellisense { /// diff --git a/Nodejs/Product/Nodejs/Intellisense/CompletionSource.cs b/Nodejs/Product/Nodejs/Intellisense/CompletionSource.cs index cd65a1a10..c96c64ca1 100644 --- a/Nodejs/Product/Nodejs/Intellisense/CompletionSource.cs +++ b/Nodejs/Product/Nodejs/Intellisense/CompletionSource.cs @@ -22,8 +22,6 @@ using Microsoft.VisualStudio.Language.Intellisense; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Classification; -using Microsoft.VisualStudio.TextManager.Interop; -using System.Runtime.InteropServices; namespace Microsoft.NodejsTools.Intellisense { sealed partial class CompletionSource : ICompletionSource { diff --git a/Nodejs/Product/Nodejs/Intellisense/CompletionSourceProvider.cs b/Nodejs/Product/Nodejs/Intellisense/CompletionSourceProvider.cs index c0c9a2f79..ead1b8352 100644 --- a/Nodejs/Product/Nodejs/Intellisense/CompletionSourceProvider.cs +++ b/Nodejs/Product/Nodejs/Intellisense/CompletionSourceProvider.cs @@ -20,7 +20,6 @@ using Microsoft.VisualStudio.Language.Intellisense; using Microsoft.VisualStudio.Shell; using Microsoft.VisualStudio.Text; -using Microsoft.VisualStudio.Text.Classification; using Microsoft.VisualStudio.Utilities; namespace Microsoft.NodejsTools.Intellisense { diff --git a/Nodejs/Product/Nodejs/Intellisense/ExpressionAnalysis.cs b/Nodejs/Product/Nodejs/Intellisense/ExpressionAnalysis.cs index b91e5959d..522c0940e 100644 --- a/Nodejs/Product/Nodejs/Intellisense/ExpressionAnalysis.cs +++ b/Nodejs/Product/Nodejs/Intellisense/ExpressionAnalysis.cs @@ -17,7 +17,6 @@ using System; using System.Collections.Generic; using Microsoft.NodejsTools.Analysis; -using Microsoft.NodejsTools.Analysis.Values; using Microsoft.NodejsTools.Parsing; using Microsoft.VisualStudio.Text; diff --git a/Nodejs/Product/Nodejs/Intellisense/FuzzyStringMatcher.cs b/Nodejs/Product/Nodejs/Intellisense/FuzzyStringMatcher.cs index a642faf7b..a6c68f139 100644 --- a/Nodejs/Product/Nodejs/Intellisense/FuzzyStringMatcher.cs +++ b/Nodejs/Product/Nodejs/Intellisense/FuzzyStringMatcher.cs @@ -15,7 +15,6 @@ //*********************************************************// using System; -using System.Collections.Generic; using System.Diagnostics; using System.Globalization; using System.Text.RegularExpressions; diff --git a/Nodejs/Product/Nodejs/Intellisense/NormalCompletionAnalysis.cs b/Nodejs/Product/Nodejs/Intellisense/NormalCompletionAnalysis.cs index dc8959bf6..430cc49a4 100644 --- a/Nodejs/Product/Nodejs/Intellisense/NormalCompletionAnalysis.cs +++ b/Nodejs/Product/Nodejs/Intellisense/NormalCompletionAnalysis.cs @@ -15,7 +15,6 @@ //*********************************************************// using System; -using System.Collections.Generic; using System.Linq; using Microsoft.NodejsTools.Analysis; using Microsoft.VisualStudio.Language.Intellisense; diff --git a/Nodejs/Product/Nodejs/Intellisense/ParseQueue.cs b/Nodejs/Product/Nodejs/Intellisense/ParseQueue.cs index c480e41c3..7daca7546 100644 --- a/Nodejs/Product/Nodejs/Intellisense/ParseQueue.cs +++ b/Nodejs/Product/Nodejs/Intellisense/ParseQueue.cs @@ -15,17 +15,10 @@ //*********************************************************// using System; -using System.Collections.Generic; -using System.Diagnostics; using System.IO; -using System.IO.Compression; -using System.Linq; using System.Threading; -using System.Windows; -using System.Windows.Threading; using Microsoft.NodejsTools.Analysis; using Microsoft.VisualStudio.Text; -using Microsoft.VisualStudio.Text.Editor; namespace Microsoft.NodejsTools.Intellisense { sealed partial class VsProjectAnalyzer { diff --git a/Nodejs/Product/Nodejs/Intellisense/RequireCompletionCache.cs b/Nodejs/Product/Nodejs/Intellisense/RequireCompletionCache.cs index b85ef9f81..a79237bd5 100644 --- a/Nodejs/Product/Nodejs/Intellisense/RequireCompletionCache.cs +++ b/Nodejs/Product/Nodejs/Intellisense/RequireCompletionCache.cs @@ -14,13 +14,7 @@ // //*********************************************************// -using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Media; -using Microsoft.VisualStudio.Language.Intellisense; using Microsoft.VisualStudioTools.Project; namespace Microsoft.NodejsTools.Intellisense { diff --git a/Nodejs/Product/Nodejs/Intellisense/ReverseExpressionParser.cs b/Nodejs/Product/Nodejs/Intellisense/ReverseExpressionParser.cs index 9c8820d5b..557ffd0a1 100644 --- a/Nodejs/Product/Nodejs/Intellisense/ReverseExpressionParser.cs +++ b/Nodejs/Product/Nodejs/Intellisense/ReverseExpressionParser.cs @@ -16,7 +16,6 @@ using System; using System.Collections.Generic; -using System.Diagnostics; using Microsoft.VisualStudio.Language.StandardClassification; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Classification; diff --git a/Nodejs/Product/Nodejs/Jade/Classifier/JadeClassifier.cs b/Nodejs/Product/Nodejs/Jade/Classifier/JadeClassifier.cs index db485807b..ee65e792a 100644 --- a/Nodejs/Product/Nodejs/Jade/Classifier/JadeClassifier.cs +++ b/Nodejs/Product/Nodejs/Jade/Classifier/JadeClassifier.cs @@ -15,7 +15,6 @@ //*********************************************************// using Microsoft.VisualStudio.Text; -using Microsoft.VisualStudio.Text.Classification; namespace Microsoft.NodejsTools.Jade { /// diff --git a/Nodejs/Product/Nodejs/Jade/IdleTimeAsyncTask.cs b/Nodejs/Product/Nodejs/Jade/IdleTimeAsyncTask.cs index 9a2225803..1ba0fe985 100644 --- a/Nodejs/Product/Nodejs/Jade/IdleTimeAsyncTask.cs +++ b/Nodejs/Product/Nodejs/Jade/IdleTimeAsyncTask.cs @@ -20,7 +20,6 @@ using System.Threading.Tasks; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudioTools; -using Microsoft.VisualStudioTools.Project; using SR = Microsoft.NodejsTools.Project.SR; namespace Microsoft.NodejsTools.Jade { diff --git a/Nodejs/Product/Nodejs/Jade/JadeContentTypeDefinition.cs b/Nodejs/Product/Nodejs/Jade/JadeContentTypeDefinition.cs index f231b088b..8d90175e0 100644 --- a/Nodejs/Product/Nodejs/Jade/JadeContentTypeDefinition.cs +++ b/Nodejs/Product/Nodejs/Jade/JadeContentTypeDefinition.cs @@ -25,6 +25,7 @@ class JadeContentTypeDefinition { public const string JadeLanguageName = "Jade"; public const string JadeContentType = "jade"; public const string JadeFileExtension = ".jade"; + public const string PugFileExtension = ".pug"; /// /// Exports the Jade content type @@ -41,5 +42,13 @@ class JadeContentTypeDefinition { [ContentType(JadeContentType)] [FileExtension(JadeFileExtension)] public FileExtensionToContentTypeDefinition IJadeFileExtension { get; set; } + + /// + /// Exports the Pug file extension + /// + [Export(typeof(FileExtensionToContentTypeDefinition))] + [ContentType(JadeContentType)] + [FileExtension(PugFileExtension)] + public FileExtensionToContentTypeDefinition IPugFileExtension { get; set; } } } diff --git a/Nodejs/Product/Nodejs/Jade/JadeEditorFactory.cs b/Nodejs/Product/Nodejs/Jade/JadeEditorFactory.cs index 93be5c54c..c0a6c60e5 100644 --- a/Nodejs/Product/Nodejs/Jade/JadeEditorFactory.cs +++ b/Nodejs/Product/Nodejs/Jade/JadeEditorFactory.cs @@ -16,7 +16,6 @@ using System; using System.Runtime.InteropServices; -using Microsoft.VisualStudio; using Microsoft.VisualStudio.Shell; using Microsoft.VisualStudio.TextManager.Interop; using Microsoft.VisualStudioTools.Project; diff --git a/Nodejs/Product/Nodejs/Jade/JadeLanguageInfo.cs b/Nodejs/Product/Nodejs/Jade/JadeLanguageInfo.cs index 7fb8f9fd7..1a1bad458 100644 --- a/Nodejs/Product/Nodejs/Jade/JadeLanguageInfo.cs +++ b/Nodejs/Product/Nodejs/Jade/JadeLanguageInfo.cs @@ -30,7 +30,7 @@ public int GetColorizer(IVsTextLines pBuffer, out IVsColorizer ppColorizer) { } public int GetFileExtensions(out string pbstrExtensions) { - pbstrExtensions = JadeContentTypeDefinition.JadeFileExtension; + pbstrExtensions = string.Join(";", new[] { JadeContentTypeDefinition.JadeFileExtension, JadeContentTypeDefinition.PugFileExtension }); return VSConstants.S_OK; } diff --git a/Nodejs/Product/Nodejs/LanguagePreferences.cs b/Nodejs/Product/Nodejs/LanguagePreferences.cs index c1ed8a45d..d209543c0 100644 --- a/Nodejs/Product/Nodejs/LanguagePreferences.cs +++ b/Nodejs/Product/Nodejs/LanguagePreferences.cs @@ -14,7 +14,6 @@ // //*********************************************************// -using System; using Microsoft.VisualStudio; using Microsoft.VisualStudio.TextManager.Interop; diff --git a/Nodejs/Product/Nodejs/Nodejs.cs b/Nodejs/Product/Nodejs/Nodejs.cs index 140719cca..cce4dac8e 100644 --- a/Nodejs/Product/Nodejs/Nodejs.cs +++ b/Nodejs/Product/Nodejs/Nodejs.cs @@ -92,10 +92,12 @@ public static string GetPathToNodeExecutableFromEnvironment(string executable = // If we didn't find node.js in the registry we should look at the user's path. foreach (var dir in Environment.GetEnvironmentVariable("PATH").Split(Path.PathSeparator)) { - var execPath = Path.Combine(dir, executable); - if (File.Exists(execPath)) { - return execPath; - } + try { + var execPath = Path.Combine(dir, executable); + if (File.Exists(execPath)) { + return execPath; + } + } catch (ArgumentException) { /*noop*/ } } // It wasn't in the users path. Check Program Files for the nodejs folder. diff --git a/Nodejs/Product/Nodejs/Nodejs.csproj b/Nodejs/Product/Nodejs/Nodejs.csproj index 19c0470ad..de5d96be1 100644 --- a/Nodejs/Product/Nodejs/Nodejs.csproj +++ b/Nodejs/Product/Nodejs/Nodejs.csproj @@ -96,6 +96,22 @@ True + + False + ..\..\Common\Microsoft.VisualStudio.Validation.14.1.144\Microsoft.VisualStudio.Validation.dll + + + False + ..\..\Common\Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86\Microsoft.VisualStudio.Workspace.dll + + + False + ..\..\Common\Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86\Microsoft.VisualStudio.Workspace.Extensions.dll + + + False + ..\..\Common\Microsoft.VisualStudio.Workspaces.14.0.723-pre-g99eb5f2f86\Microsoft.VisualStudio.Workspace.Extensions.VS.dll + True @@ -220,6 +236,7 @@ + @@ -327,6 +344,13 @@ + + + Form + + + NewFileNameForm.cs + @@ -676,6 +700,7 @@ NodejsGeneralOptionsControl.cs + SalsaLsIntellisenseOptionsControl.cs @@ -867,6 +892,7 @@ + Designer @@ -935,11 +961,8 @@ - - - @@ -975,71 +998,6 @@ Resources\Icons\TSProject_SolutionExplorerNode.png Microsoft.VisualStudioTools.Resources.Icons.TSProject_SolutionExplorerNode.png - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Designer - - - Designer - - - - - - - - - - - - - - - - - - - - - - - - Designer - - - Designer - - @@ -1092,54 +1050,6 @@ Designer - - Designer - - - - - - - - - - - - - - - - - - - - - - - - - Designer - - - - - - - - - - - - - - - - - - - - - @@ -1199,40 +1109,6 @@ Designer - - Designer - - - - - - - - - - - - - - - - - - - - - Designer - - - - - - - - - - - Designer @@ -1453,17 +1329,6 @@ Designer - - - - - - - - - - - @@ -1628,8 +1493,6 @@ - - @@ -1645,7 +1508,9 @@ - + + + + + + + + + + +