Solution Class |
Namespace: Nova.CodeDOM
public class Solution : CodeObject, INamedCodeObject, IFile
The Solution type exposes the following members.
Name | Description | |
---|---|---|
Solution(String, ActionLoadStatus, CodeObject) |
Create a new Solution object.
| |
Solution(String, String, String, ActionLoadStatus, CodeObject) |
Parse a solution from a standard VS solution file.
|
Name | Description | |
---|---|---|
_AsString |
This property is just to make debugging easier.
(Inherited from CodeObject.) | |
ActiveConfiguration |
The active configuration (usually 'Debug' or 'Release').
| |
ActivePlatform |
The active platform (usually 'Any CPU', 'x86', or 'Mixed Platforms').
| |
Annotations |
Annotations (comments, attributes, directives, messages) associated with the current code object.
(Inherited from CodeObject.) | |
Category |
The descriptive category of the code object.
| |
CodeAnnotations | ||
Codebase |
The parent Codebase of the Solution.
| |
ColumnNumber |
The column number associated with the CodeObject (if any, 0 if none).
(Inherited from CodeObject.) | |
Comment |
The comment for the code object (if any).
(Inherited from CodeObject.) | |
DocComment |
The documentation comment for the code object (if any).
(Inherited from CodeObject.) | |
EOLComment |
The End-Of-Line comment for the code object (if any).
(Inherited from CodeObject.) | |
FileEncoding |
The encoding of the file (normally UTF8).
| |
FileExists |
True if the associated file exists.
| |
FileHasUTF8BOM |
True if the file has a UTF8 byte-order-mark.
| |
FileName |
The associated file name of the Solution.
| |
FileUsingTabs |
Always true for a Solution.
| |
FormatVersion |
The version number of the solution file format.
| |
GlobalSections |
The SolutionGlobalSections of the associated '.sln' file.
| |
HasAnnotations |
True if the code object has any annotations.
(Inherited from CodeObject.) | |
HasAttributes |
True if the code object has any attributes.
(Inherited from CodeObject.) | |
HasComments |
True if the code object has any comments of any kind.
(Inherited from CodeObject.) | |
HasCompilerDirectives |
True if the code object has any compiler directive annotations.
(Inherited from CodeObject.) | |
HasDocComments |
True if the code object has any documentation comments.
(Inherited from CodeObject.) | |
HasEOLComments |
True if the code object has any EOL comments.
(Inherited from CodeObject.) | |
HasEOLOrPostAnnotations |
True if the code object has any EOL or Postfix annotations.
(Inherited from CodeObject.) | |
HasErrors |
True if the code object has any error messages.
(Inherited from CodeObject.) | |
HasFirstOnLineAnnotations |
True if the code object has any annotations on separate lines.
(Inherited from CodeObject.) | |
HasInfixComments |
True if the code object has any Infix comments.
(Inherited from CodeObject.) | |
HasMessages |
True if the code object has any generated messages.
(Inherited from CodeObject.) | |
HasNoIndentation |
Determines if the code object has no indentation.
(Inherited from CodeObject.) | |
HasNonEOLComments |
True if the code object has any regular (non-doc) preceding (non-EOL, non-Infix, non-Postfix) comments.
(Inherited from CodeObject.) | |
HasPostAnnotations |
True if the code object has any postfix annotations.
(Inherited from CodeObject.) | |
HasTerminator |
Determines if the code object has a terminator character.
(Inherited from CodeObject.) | |
HiddenRef |
Any hidden reference to another CodeObject.
(Inherited from CodeObject.) | |
InfixComment |
The infix comment for the code object (if any).
(Inherited from CodeObject.) | |
IsFirstOnLine |
Determines if the code object appears as the first item on a line.
(Inherited from CodeObject.) | |
IsFirstOnLineDefault |
True if the code object defaults to starting on a new line.
(Inherited from CodeObject.) | |
IsGenerated |
Determines if the code object is generated.
(Inherited from CodeObject.) | |
IsGroupingSet |
Determines if the 'grouping' (has parens or braces) status has been set.
(Inherited from CodeObject.) | |
IsNew |
True if the Solution is newly created and hasn't been saved yet.
| |
IsNewLinesSet |
Determines if the newline count has been set on the code object.
(Inherited from CodeObject.) | |
IsRenderable |
Always false.
(Overrides CodeObjectIsRenderable.) | |
IsSingleLine |
Determines if the code object only requires a single line for display.
(Inherited from CodeObject.) | |
IsSingleLineDefault |
True if the code object only requires a single line for display by default.
(Inherited from CodeObject.) | |
LineNumber |
The line number associated with the CodeObject (if any, 0 if none).
(Inherited from CodeObject.) | |
MinimumVisualStudioVersion |
The Minimum Visual Studio version (2013 release and later).
| |
Name |
The name of the Solution (does not include the file path or extension).
| |
NewLines |
The number of newlines preceding the object (0 to N).
(Inherited from CodeObject.) | |
Parent |
The parent CodeObject.
(Inherited from CodeObject.) | |
PostfixComment |
The postfix comment for the code object (if any).
(Inherited from CodeObject.) | |
ProductRelease |
The product release number.
| |
ProjectEntries |
The SolutionProjectEntrys of the associated '.sln' file.
| |
Projects |
The child Projects.
| |
ProjectsInDependentOrder |
The child Projects in dependent order.
| |
VisualStudioVersion |
The Visual Studio version (2013 release and later).
|
Name | Description | |
---|---|---|
Accept |
Accept the specified visitor object for the current code object and it's children.
(Overrides CodeObjectAccept(IVisitor).) | |
AcceptAnnotations(IVisitor) |
Accept the specified visitor object for all regular (non-EOL, non-Infix, non-Postfix) annotations (comments, attributes, compiler directives).
(Inherited from CodeObject.) | |
AcceptAnnotations(IVisitor, AnnotationFlags) |
Accept the specified visitor object for all specified Infix or Postfix annotations (comments, compiler directives).
(Inherited from CodeObject.) | |
AcceptEOLComments |
Accept the specified visitor object for all EOL comments.
(Inherited from CodeObject.) | |
AcceptInfixComments |
Accept the specified visitor object for all Infix comments.
(Inherited from CodeObject.) | |
AcceptInfixEOLComments |
Accept the specified visitor object for all Infix EOL comments.
(Inherited from CodeObject.) | |
AddProject | ||
AddProjectConfiguration |
Add the configuration and platform from the specified ProjectConfiguration.
| |
AddToDictionary |
Add the CodeObject to the specified dictionary.
| |
AnnotationAdded |
Add a listed annotation to the Solution.
| |
AnnotationRemoved |
Remove a listed annotation from the Solution.
| |
AssociateCommentWhenParsing |
Determine if the specified comment should be associated with the current code object during parsing.
(Inherited from CodeObject.) | |
AsString |
Render the entire code object as a string, using LFs for newlines.
(Inherited from CodeObject.) | |
AsText |
Convert the code object to text with a trailing newline, and using CR/LF pairs for newlines (file format).
(Inherited from CodeObject.) | |
AsText(CodeWriter, CodeObjectRenderFlags) | (Overrides CodeObjectAsText(CodeWriter, CodeObjectRenderFlags).) | |
AsText(CodeObjectRenderFlags, Boolean, StackCodeWriterAlignmentState) |
Convert the code object to text using the specified flags and format (file or string).
(Inherited from CodeObject.) | |
AsTextAfter | (Inherited from CodeObject.) | |
AsTextAnnotations(CodeWriter, CodeObjectRenderFlags) |
Render all regular (non-EOL, non-Infix, non-Postfix, non-Message) annotations (comments, attributes, compiler directives).
(Inherited from CodeObject.) | |
AsTextAnnotations(CodeWriter, AnnotationFlags, CodeObjectRenderFlags) |
Render all specified Infix or Postfix annotations (comments, compiler directives).
(Inherited from CodeObject.) | |
AsTextBefore | (Inherited from CodeObject.) | |
AsTextEOLComments |
Render all EOL comments.
(Inherited from CodeObject.) | |
AsTextEvaluatedType | (Inherited from CodeObject.) | |
AsTextInfixComments |
Render all Infix comments with the specified mask.
(Inherited from CodeObject.) | |
AsTextInfixEOLComments |
Render all Infix EOL comments.
(Inherited from CodeObject.) | |
AsTextLeftMostAnnotations |
Render all regular annotations on the current object, or the left most binary operator.
(Inherited from CodeObject.) | |
AsTextLength |
Determine the length of the code object if converted to a string using the specified flags.
(Inherited from CodeObject.) | |
AsTextProjectEnd | ||
AsTextProjectStart | ||
AttachAnnotation(Annotation, Boolean) |
Attach an Annotation (Comment, DocComment, Attribute,
CompilerDirective, or Message) to the CodeObject.
(Inherited from CodeObject.) | |
AttachAnnotation(Annotation, AnnotationFlags, Boolean) |
Attach an Annotation to the CodeObject at the specified position.
(Inherited from CodeObject.) | |
AttachComment |
Create a comment object and attach it to the code object.
(Inherited from CodeObject.) | |
AttachEOLComment |
Create an EOL comment object and attach it to the code object.
(Inherited from CodeObject.) | |
AttachMessage |
Create a message and attach it to the code object.
(Inherited from CodeObject.) | |
CalculateMetrics |
Calculate metrics for this code object and its children.
(Inherited from CodeObject.) | |
CheckForAlignment |
Check for alignment of any EOL comments.
(Inherited from CodeObject.) | |
Clone |
Deep-clone the code object.
(Overrides CodeObjectClone.) | |
CloneField(Object, Object) |
Clone a field of a code object, including setting the parent.
(Inherited from CodeObject.) | |
CloneFieldT(T, T) |
Clone a field of a code object, including setting the parent.
(Inherited from CodeObject.) | |
CopyFormatting |
Copy formatting from another code object.
(Inherited from CodeObject.) | |
CreateAnnotations |
Create the list of child Annotations, or return the existing one.
(Inherited from CodeObject.) | |
CreateProject |
Create and add a new Project to the solution by filename.
| |
CreateRef |
Create a reference to the CodeObject.
(Inherited from CodeObject.) | |
DefaultFormat |
Default format the code object.
(Inherited from CodeObject.) | |
DefaultFormatField |
Default format the specified child field code object.
(Inherited from CodeObject.) | |
DefaultNewLines |
Determine a default of 1 or 2 newlines when adding items to a Block.
(Inherited from CodeObject.) | |
DetermineActiveConfigurationAndPlatform |
Determine the active configuration and platform (either from previously saved settings, or defaults).
| |
Dispose |
Dispose the CodeObject.
(Inherited from CodeObject.) | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
EvaluateTypeOrNamespace |
Evaluate the type or namespace associated with the code object.
(Inherited from CodeObject.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
FindGlobalSection |
Find any GlobalSection with the specified name.
| |
FindParentT |
Find the parent object of the specified type.
(Inherited from CodeObject.) | |
FindParentMethod |
Find the parent method (or anonymous method or lambda) of the current code object.
(Inherited from CodeObject.) | |
FindParentMethodOrType |
Find the parent method (or anonymous method or lambda) or type of the current code object.
(Inherited from CodeObject.) | |
FindProject(Guid) |
Find a project by its GUID.
| |
FindProject(String) |
Find a project by name.
| |
FindProjectByAssemblyName |
Find a project by its assembly name.
| |
FindProjectByFileName |
Find a project by its full file name.
| |
FindProjectEntry(Guid) |
Find any ProjectEntry with the specified Guid.
| |
FindProjectEntry(String) |
Find any ProjectEntry with the specified name.
| |
GetAllChildrenT |
Get an enumerator for all children objects of type T in
the CodeObject and in any child CodeObjects (recursively).
(Inherited from CodeObject.) | |
GetAttribute |
Returns the first attribute expression (Call or ConstructorRef) with the specified name on the CodeObject.
(Inherited from CodeObject.) | |
GetComment |
Get the comment that satisfies the specified predicate.
(Inherited from CodeObject.) | |
GetConfigurationsAndPlatforms |
Determine lists of unique configurations and platforms from the appropriate global section.
| |
GetDescription |
Get a short text description of the CodeObject.
This is generally the shortest text representation that uniquely identifies objects, even if
they have the same name, for example: type or return type, name, type parameters, parameters.
(Inherited from CodeObject.) | |
GetDocSummary |
Returns the DocSummary documentation comment, or null if none exists.
(Inherited from CodeObject.) | |
GetFullName |
Get the full name of the INamedCodeObject, including any namespace name.
| |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetIndentLevel |
Get the indent level of this object.
(Inherited from CodeObject.) | |
GetIndentSpaceCount |
Get the current indent in spaces.
(Inherited from CodeObject.) | |
GetInferredType |
Determine the type of an inferred ('var') type.
(Inherited from CodeObject.) | |
GetMessageCounts |
Calculate message counts.
| |
GetNamespace |
Get the Namespace for this CodeObject.
(Inherited from CodeObject.) | |
GetProjectConfiguration |
Get the configuration and platform for the specified project for the given solution configuration and platform.
| |
GetSolutionFolders |
Get any Solution folders for the specified Project.
| |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetTypeRef |
Get a TypeRef for the type with the specified full name, with caching (generally used for System types).
(Inherited from CodeObject.) | |
GetWebSiteDirectory |
Get the directory for the specified web site project.
| |
GetWorstMessageType |
Get the type of the worst attached message.
(Inherited from CodeObject.) | |
HasAnnotationT | (Inherited from CodeObject.) | |
HasAttribute |
Returns true if the attribute with the specified name exists on the object, otherwise false.
(Inherited from CodeObject.) | |
HasUnresolvedRef |
Returns true if the code object is an UnresolvedRef or has any UnresolvedRef children.
(Inherited from CodeObject.) | |
IsChildIndented |
Returns true if the specified child object is indented from the parent.
(Inherited from CodeObject.) | |
IsChildPrefix |
Returns true if the specified child object is prefixed to the current object.
(Inherited from CodeObject.) | |
Load(String, LoadOptions, ActionLoadStatus, CodeObject) |
Load the specified Solution file, including all child Projects and code files.
| |
Load(String, String, String, LoadOptions, ActionLoadStatus, CodeObject) |
Load the specified Solution file, including all child Projects and code files.
| |
LoadProjectReferencedAssembliesAndTypes |
Load all referenced assemblies for all projects, then load all types from them.
| |
LoadUserOptions |
Load user options (such as active configuration/platform) from any '.nuo' file.
| |
LogAndAttachException |
Log the specified exception and message and also attach it as an annotation.
| |
LogAndAttachMessage |
Log the specified text message and also attach it as an annotation.
| |
LogException |
Log the specified exception and message.
| |
LogMessage |
Log the specified text message with the specified severity level.
| |
LogMessageCounts |
Log message counts, and optionally errors and warnings (or all messages if detail logging is on).
| |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
MoveAllComments |
Move all (regular or EOL) comments from the specified token to the current code object, converting any
EOL comments to regular comments (which will be rendered inline if necessary).
(Inherited from CodeObject.) | |
MoveAnnotations |
Move any annotations from the specified location to the specified destination location.
(Inherited from CodeObject.) | |
MoveComments(Token) |
Move any non-EOL comments from the specified token to the current code object.
(Inherited from CodeObject.) | |
MoveComments(Token, Boolean) |
Move any non-EOL comments from the specified token to the current code object.
(Inherited from CodeObject.) | |
MoveCommentsAsPost |
Move any non-EOL comments from the specified token to the current code object as Post comments.
(Inherited from CodeObject.) | |
MoveEOLAndPostAnnotations |
Move any EOL or Postfix annotations from the specified code object to the current code object.
(Inherited from CodeObject.) | |
MoveEOLComment(CodeObject) |
Move any EOL comment from the specified code object to the current code object.
(Inherited from CodeObject.) | |
MoveEOLComment(Token) |
Move any EOL comment from the specified token to the current code object.
(Inherited from CodeObject.) | |
MoveEOLComment(Token, Boolean, Boolean) |
Move any EOL comment from the specified token to the current code object.
(Inherited from CodeObject.) | |
MoveEOLCommentAsInfix |
Move any EOL comment from the specified token to the current code object as an Infix EOL comment.
(Inherited from CodeObject.) | |
MoveFormatting(CodeObject) |
Move formatting from the specified code object to the current object.
(Inherited from CodeObject.) | |
MoveFormatting(Token) |
Move formatting from the specified token to the current object.
(Inherited from CodeObject.) | |
MovePrefixAnnotationsAs |
Move any prefix annotations on the specified code object to the current code object as the specified type of annotation.
(Inherited from CodeObject.) | |
NotifyListedAnnotationAdded |
Add the listed annotation.
(Overrides CodeObjectNotifyListedAnnotationAdded(Annotation).) | |
NotifyListedAnnotationRemoved |
Remove the listed annotation.
(Overrides CodeObjectNotifyListedAnnotationRemoved(Annotation).) | |
Parse |
Parse a solution from a file.
| |
ParseAnnotations(Parser, CodeObject) |
Parse annotations - specifically, compiler directives around things such as TypeParameters or ParameterDecls.
(Inherited from CodeObject.) | |
ParseAnnotations(Parser, CodeObject, Boolean, Boolean) |
Parse any comments, attributes, compiler directives.
(Inherited from CodeObject.) | |
ParseExpectedToken |
Parse the specified expected token, attaching a parse error to the current object if it doesn't exist.
(Inherited from CodeObject.) | |
ParseProject |
Parse a project.
| |
ParseUnusedAnnotations |
Parse annotations from the Unused list.
(Inherited from CodeObject.) | |
ReadLine | ||
RemoveAllAnnotationsT |
Remove all annotations of the specified type from this object.
(Inherited from CodeObject.) | |
RemoveAllAnnotationsWhereT |
Remove all annotations from this object where the specified predicate is true.
(Inherited from CodeObject.) | |
RemoveAllMessages |
Remove all messages from this object, or optionally only from the specified source.
(Inherited from CodeObject.) | |
RemoveAttribute |
Remove the attribute expression with the specified name.
(Inherited from CodeObject.) | |
RemoveFromDictionary |
Remove the CodeObject from the specified dictionary.
| |
Resolve(ResolveFlags) |
Resolve all child symbolic references.
(Inherited from CodeObject.) | |
Resolve(ResolveCategory, ResolveFlags) |
Resolve all child symbolic references, using the specified ResolveCategory and ResolveFlags.
(Inherited from CodeObject.) | |
ResolveAttributes |
Resolve any attached attributes.
(Inherited from CodeObject.) | |
ResolveDocComments |
Resolve any references in attached documentation comments.
(Inherited from CodeObject.) | |
ResolveGotoTargetUp |
Resolve child code objects that match the specified name are valid goto targets, moving up the tree until a complete match is found.
(Inherited from CodeObject.) | |
ResolveProjectReferencesAndUpdateDependencies |
Resolve all project references and update project dependencies.
| |
ResolveRefUp |
Resolve child code objects that match the specified name, moving up the tree until a complete match is found.
(Inherited from CodeObject.) | |
ResolveRefUpSkipMethodBody |
Similar to ResolveRefUp(String, Resolver), but skips trying to resolve the symbol in the body or parameters of a
method (used for resolving parameter types).
(Inherited from CodeObject.) | |
Save |
Save the Solution.
| |
SaveAll | ||
SaveAs |
Save the Solution to the specified file name.
| |
SaveUserOptions |
Save user options (such as active configuration/platform) to a '.nuo' file.
| |
SetField(Object, Object, Boolean) |
Set a field of a code object, including setting the parent, and optional formatting.
(Inherited from CodeObject.) | |
SetFieldT(ChildListT, ChildListT) |
Set a ChildList collection field of a code object, including setting the parent.
(Inherited from CodeObject.) | |
SetFieldT(T, T, Boolean) |
Set a field of a code object, including setting the parent, and optional formatting.
(Inherited from CodeObject.) | |
SetFormatFlag | (Inherited from CodeObject.) | |
SetLineCol(CodeObject) |
Set the line and column numbers to those in the specified CodeObject.
(Inherited from CodeObject.) | |
SetLineCol(Token) |
Set the line and column numbers to those in the specified token.
(Inherited from CodeObject.) | |
SetNewLines |
Special method to set the newline count without setting the NewLinesSet flag.
(Inherited from CodeObject.) | |
SetStartLineCol |
Set the starting line and column numbers to those in the specified token (used by
some code objects with prefixes such as modifiers).
(Inherited from CodeObject.) | |
ToString |
Render the type of the code object and its description as a string.
(Inherited from CodeObject.) | |
Unload |
Unload the Solution - unload all Projects, FrameworkContexts, the master ApplicationContext
instance, clear all CodeAnnotations, etc.
| |
UnrecognizedLine | ||
UpdateAllDeclExpressions |
Recursively update the dictionary of names in the specified Block by either adding or removing
(as specified by the 2nd parameter) all appropriate nested INamedCodeObjects expressions in the
current CodeObject tree (specifically implemented for LocalDeclExpr expression objects).
(Inherited from CodeObject.) | |
UpdateLineCol |
Update the line and column numbers according to the current positions in the CodeWriter,
if the UpdateLineCol flag is set.
(Inherited from CodeObject.) | |
UpdateProjectDependencies |
Update the dependency-ordered list of Projects.
|
Name | Description | |
---|---|---|
_activeConfiguration |
The active configuration (usually 'Debug' or 'Release').
| |
_activePlatform |
The active platform (usually 'Any CPU', 'x86', or 'Mixed Platforms').
| |
_annotations |
Any Annotations (Comments, DocComments, Attributes,
or Messages) associated with the CodeObject (null if none).
(Inherited from CodeObject.) | |
_codeAnnotations | ||
_codeAnnotationsDictionary | ||
_columnNumber |
The starting column number associated with the CodeObject if parsed from or written to text form.
(Inherited from CodeObject.) | |
_fileName |
The full file name.
| |
_formatFlags |
Formatting flags - for line feeds, braces, etc.
(Inherited from CodeObject.) | |
_formatVersion |
The version of the solution file.
(11.00 = VS2010 = v10, 10.00 = VS2008 = v9, 9.00 = VS2005 = v8, 8.00 = VS2003 = v7.1, ? = VS2002 = v7)
| |
_globalSections |
Global sections (blocks of configuration data).
| |
_isNew |
True if the Solution is newly created and hasn't been saved yet.
| |
_lineNumber |
The starting line number associated with the CodeObject if parsed from or written to text form.
(Inherited from CodeObject.) | |
_minimumVisualStudioVersion |
The Minimum Visual Studio version.
| |
_name |
The name of the Solution.
| |
_parent |
The parent CodeObject.
(Inherited from CodeObject.) | |
_productRelease |
The product release.
(Visual Studio 2010, Visual C# Express 2008, etc.)
| |
_projectEntries |
Project entries (these represent the entries in the solution file).
| |
_projects |
All projects in this solution (will be sorted alphabetically).
| |
_projectsInDependentOrder |
All projects in this solution, ordered with most-dependent first.
| |
_statusCallback |
Callback used to indicate status changes to the UI while loading.
| |
_visualStudioVersion |
The Visual Studio version.
| |
GlobalEnd | ||
GlobalSectionEnd | ||
GlobalSectionStart | ||
GlobalStart | ||
HideSolutionNodeProperty | ||
MinimumVisualStudioVersionPrefix | ||
NestedProjectsGlobalSection | ||
PlatformAnyCPU | ||
PlatformDotNet | ||
PlatformMixed | ||
PostProject | ||
PostSolution | ||
PreProject | ||
PreSolution | ||
ProductReleasePrefix | ||
ProjectConfigurationPlatformsGlobalSection | ||
ProjectEnd | ||
ProjectSectionEnd | ||
ProjectSectionStart | ||
ProjectStart | ||
SolutionConfigurationPlatformsGlobalSection | ||
SolutionFileExtension | ||
SolutionItems | ||
SolutionItemsProjectSection | ||
SolutionOptionsExtension | ||
SolutionPropertiesGlobalSection | ||
SourceCodeControlGlobalSection | ||
VisualStudioSolutionFileHeader | ||
VisualStudioVersionPrefix | ||
WebsitePropertiesProjectSection |