Click or drag to resize

Project Methods

The Project type exposes the following members.

Methods
  NameDescription
Public methodAccept
Accept the specified visitor object for the current code object and it's children.
(Overrides CodeObjectAccept(IVisitor).)
Public methodAcceptAnnotations(IVisitor)
Accept the specified visitor object for all regular (non-EOL, non-Infix, non-Postfix) annotations (comments, attributes, compiler directives).
(Inherited from CodeObject.)
Public methodAcceptAnnotations(IVisitor, AnnotationFlags)
Accept the specified visitor object for all specified Infix or Postfix annotations (comments, compiler directives).
(Inherited from CodeObject.)
Public methodAcceptEOLComments
Accept the specified visitor object for all EOL comments.
(Inherited from CodeObject.)
Public methodAcceptInfixComments
Accept the specified visitor object for all Infix comments.
(Inherited from CodeObject.)
Public methodAcceptInfixEOLComments
Accept the specified visitor object for all Infix EOL comments.
(Inherited from CodeObject.)
Public methodAddAssemblyReference(String, String)
Add an assembly reference by name.
Public methodAddAssemblyReference(String, String, String, Boolean, String, Boolean)
Add an assembly reference by name.
Public methodAddCodeUnit
Add a CodeUnit to the Project, keeping the CodeUnits collection sorted alphabetically.
Public methodAddConfiguration
Public methodAddDefaultAssemblyReferences
Add default assembly references to a newly created project (System, System.Core, System.Data, System.Data.DataSetExtensions, System.Xml, System.Xml.Linq, Microsoft.CSharp).
Public methodAddDefaultConfigurations
Add default configurations to a newly created project (Debug and Release for AnyCPU).
Public methodAddExistingFile
Add an existing file to the project. A corresponding ProjectFileItem is also created.
Public methodAddImplicitMscorlibReference
Add the implicit reference to 'mscorlib'.
Protected methodAddImplicitSystemCoreReferenceIfNecessary
Add an implicit reference to System.Core if required.
Public methodAddPlatformConfiguration
Protected methodAddReference
Add a reference object.
Public methodAddToDictionary
Add the CodeObject to the specified dictionary.
Public methodAnnotationAdded
Add a listed annotation to the Project.
Public methodAnnotationRemoved
Remove a listed annotation from the Project.
Public methodAreInternalTypesVisibleForAssembly
Determine if internal types in the specified assembly are visible to the current project.
Public methodAreInternalTypesVisibleTo
Determine if internal types in the project are visible to the specified project.
Public methodAssociateCommentWhenParsing
Determine if the specified comment should be associated with the current code object during parsing.
(Inherited from CodeObject.)
Public methodAsString
Render the entire code object as a string, using LFs for newlines.
(Inherited from CodeObject.)
Public methodAsText
Convert the code object to text with a trailing newline, and using CR/LF pairs for newlines (file format).
(Inherited from CodeObject.)
Public methodAsText(XmlWriter)
Public methodAsText(CodeWriter, CodeObjectRenderFlags) (Overrides CodeObjectAsText(CodeWriter, CodeObjectRenderFlags).)
Public methodAsText(CodeObjectRenderFlags, Boolean, StackCodeWriterAlignmentState)
Convert the code object to text using the specified flags and format (file or string).
(Inherited from CodeObject.)
Protected methodAsTextAfter (Inherited from CodeObject.)
Public methodAsTextAnnotations(CodeWriter, CodeObjectRenderFlags)
Render all regular (non-EOL, non-Infix, non-Postfix, non-Message) annotations (comments, attributes, compiler directives).
(Inherited from CodeObject.)
Public methodAsTextAnnotations(CodeWriter, AnnotationFlags, CodeObjectRenderFlags)
Render all specified Infix or Postfix annotations (comments, compiler directives).
(Inherited from CodeObject.)
Protected methodAsTextBefore (Inherited from CodeObject.)
Public methodAsTextEOLComments
Render all EOL comments.
(Inherited from CodeObject.)
Protected methodAsTextEvaluatedType (Inherited from CodeObject.)
Public methodAsTextInfixComments
Render all Infix comments with the specified mask.
(Inherited from CodeObject.)
Public methodAsTextInfixEOLComments
Render all Infix EOL comments.
(Inherited from CodeObject.)
Public methodAsTextLeftMostAnnotations
Render all regular annotations on the current object, or the left most binary operator.
(Inherited from CodeObject.)
Public methodAsTextLength
Determine the length of the code object if converted to a string using the specified flags.
(Inherited from CodeObject.)
Public methodAttachAnnotation(Annotation, Boolean) (Inherited from CodeObject.)
Public methodAttachAnnotation(Annotation, AnnotationFlags, Boolean)
Attach an Annotation to the CodeObject at the specified position.
(Inherited from CodeObject.)
Public methodAttachComment
Create a comment object and attach it to the code object.
(Inherited from CodeObject.)
Public methodAttachEOLComment
Create an EOL comment object and attach it to the code object.
(Inherited from CodeObject.)
Public methodAttachMessage
Create a message and attach it to the code object.
(Inherited from CodeObject.)
Public methodCalculateMetrics
Calculate metrics for this code object and its children.
(Inherited from CodeObject.)
Protected methodCheckForAlignment
Check for alignment of any EOL comments.
(Inherited from CodeObject.)
Public methodClone
Deep-clone the code object.
(Overrides CodeObjectClone.)
Protected methodCloneField(Object, Object)
Clone a field of a code object, including setting the parent.
(Inherited from CodeObject.)
Protected methodCloneFieldT(T, T)
Clone a field of a code object, including setting the parent.
(Inherited from CodeObject.)
Public methodCompareTo
Compare one Project to another.
Public methodCopyFormatting
Copy formatting from another code object.
(Inherited from CodeObject.)
Public methodCreateAnnotations
Create the list of child Annotations, or return the existing one.
(Inherited from CodeObject.)
Public methodCreateCodeUnit(String)
Create a new CodeUnit for the specified file name, and add it to the Project along with a corresponding ProjectFileItem.
Public methodCreateCodeUnit(String, String)
Create a new CodeUnit for a code fragment, and add it to the Project.
Public methodCreateRef
Create a reference to the CodeObject.
(Inherited from CodeObject.)
Protected methodDefaultFormat
Default format the code object.
(Inherited from CodeObject.)
Protected methodDefaultFormatField
Default format the specified child field code object.
(Inherited from CodeObject.)
Public methodDefaultNewLines
Determine a default of 1 or 2 newlines when adding items to a Block.
(Inherited from CodeObject.)
Public methodDefineCompilerDirectiveSymbol
Define a compiler directive symbol for the current configuration.
Public methodDefineConstant
Define a constant.
Public methodDispose
Dispose the CodeObject.
(Inherited from CodeObject.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodEvaluateCondition
Evaluate any conditional attribute on the current element.
Protected methodEvaluateExpression
Evaluate a conditional expression.
Public methodEvaluateMacros
Evaluate any $(PropertyName) macros in the input string.
Public methodEvaluateTypeOrNamespace
Evaluate the type or namespace associated with the code object.
(Inherited from CodeObject.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodFind
Find a namespace or type with the fully-specified name.
Public methodFindCodeUnit
Find a CodeUnit by name.
Public methodFindConfiguration
Find any configuration with the specified configuration name and platform name.
Public methodFindNamespace
Find the Namespace with the fully-specified name.
Public methodFindParentT
Find the parent object of the specified type.
(Inherited from CodeObject.)
Public methodFindParentMethod
Find the parent method (or anonymous method or lambda) of the current code object.
(Inherited from CodeObject.)
Public methodFindParentMethodOrType
Find the parent method (or anonymous method or lambda) or type of the current code object.
(Inherited from CodeObject.)
Public methodFindPlatformConfiguration
Find any platform-specifc configuration with the specified platform name.
Public methodFindRef
Find a namespace or type in the global namespace with the fully specified name, returning a SymbolicRef to it. To find generic types, specify a tick mark and type argument count, such as "System.Tuple`2".
Public methodFindReferenceAliasNamespace
Find the RootNamespace for the Reference with the specified alias name.
Public methodGetAllChildrenT
Get an enumerator for all children objects of type T in the CodeObject and in any child CodeObjects (recursively).
(Inherited from CodeObject.)
Public methodGetAllDeclaredTypeDecls
Get an enumerator for all TypeDecls declared in the Project (does not include TypeDecls imported from other Projects).
Public methodGetAttribute
Returns the first attribute expression (Call or ConstructorRef) with the specified name on the CodeObject.
(Inherited from CodeObject.)
Public methodGetComment
Get the comment that satisfies the specified predicate.
(Inherited from CodeObject.)
Public methodGetDescription
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.)
Public methodGetDirectory
Get the directory of the Project (handles website directories).
Public methodGetDocSummary
Returns the DocSummary documentation comment, or null if none exists.
(Inherited from CodeObject.)
Public methodGetFullName
Get the full name of the INamedCodeObject, including any namespace name.
Public methodGetFullOutputPath
Get the full output path of the Project.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetIndentLevel
Get the indent level of this object.
(Inherited from CodeObject.)
Public methodGetIndentSpaceCount
Get the current indent in spaces.
(Inherited from CodeObject.)
Public methodGetInferredType
Determine the type of an inferred ('var') type.
(Inherited from CodeObject.)
Public methodGetNamespace
Get the Namespace for this CodeObject.
(Inherited from CodeObject.)
Public methodStatic memberGetNugetPackagesPath
Get the NuGet Packages path.
Public methodGetPackageDllPath
Get the DLL path for the given package name and version.
Public methodGetRenderName
Protected methodGetRootNamespace
Determine the RootNamespace from any '::' prefix on the specified name, defaulting to the global namespace.
Public methodGetSolutionFolders
Get any Solution folders for this Project.
Public methodGetTargetFrameworkDescription
Get the description of the target framework.
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodGetTypeRef
Get a TypeRef for the type with the specified full name, with caching (generally used for System types).
(Inherited from CodeObject.)
Public methodGetVersionOfProfile
Get the .NET target framework version for the specified portable profile.
Public methodGetWorstMessageType
Get the type of the worst attached message.
(Inherited from CodeObject.)
Protected methodHasAnnotationT (Inherited from CodeObject.)
Public methodHasAttribute
Returns true if the attribute with the specified name exists on the object, otherwise false.
(Inherited from CodeObject.)
Public methodHasUnresolvedRef
Returns true if the code object is an UnresolvedRef or has any UnresolvedRef children.
(Inherited from CodeObject.)
Protected methodInitialize
Protected methodIsChildIndented
Returns true if the specified child object is indented from the parent.
(Inherited from CodeObject.)
Protected methodIsChildPrefix
Returns true if the specified child object is prefixed to the current object.
(Inherited from CodeObject.)
Public methodIsCompilerDirectiveSymbolDefined
Determine if a compiler directive symbol is defined for the current configuration.
Public methodIsConstantDefined
Determine if the specified constant is defined.
Public methodIsDependentOn
Determine if this project depends on the specified project.
Public methodStatic memberLoad(String, LoadOptions, ActionLoadStatus, CodeObject)
Load the specified Project file and all child code files directly (without a Solution).
Public methodStatic memberLoad(String, String, String, LoadOptions, ActionLoadStatus, CodeObject)
Load the specified Project file and all child code files directly (without a Solution).
Public methodLoadAssembly
Load an assembly.
Public methodLoadFile
Load an existing file into the project. This method is used primarily during the loading process and does NOT add a corresponding ProjectFileItem. To add a new file to a project along with a FileItem, use CreateCodeUnit(String). To add an existing file to a project along with a FileItem, use AddExistingFile(String, Boolean, ActionLoadStatus, CodeObject).
Protected methodLoadProjectAssetsJson
Load the project assets json file, creating a map of name/version to relative DLL path.
Public methodLoadReferencedAssemblies
Load all externally referenced assemblies.
Public methodLoadReferencedAssembliesAndTypes
Load all referenced assemblies, then load all types from them.
Public methodLoadTypes
Load all of the (non-nested) types in the specified assembly into the appropriate namespaces under the specified root namespace, hiding any of the specified types.
Protected methodLoadTypesFromReferenceAssembliesInternal
Public methodLoadTypesFromReferencedAssemblies
Load types from all externally referenced assemblies.
Public methodLoadTypesFromReferencedProjects
Load all of the types in all referenced projects into this one.
Public methodLogAndAttachException
Log the specified exception and message and also attach it as an annotation.
Public methodLogAndAttachMessage
Log the specified text message and also attach it as an annotation.
Public methodLogException
Log the specified exception and message.
Public methodLogMessage
Log the specified text message with the specified severity level.
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodMoveAllComments
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.)
Public methodMoveAnnotations
Move any annotations from the specified location to the specified destination location.
(Inherited from CodeObject.)
Public methodMoveComments(Token)
Move any non-EOL comments from the specified token to the current code object.
(Inherited from CodeObject.)
Public methodMoveComments(Token, Boolean)
Move any non-EOL comments from the specified token to the current code object.
(Inherited from CodeObject.)
Public methodMoveCommentsAsPost
Move any non-EOL comments from the specified token to the current code object as Post comments.
(Inherited from CodeObject.)
Public methodMoveEOLAndPostAnnotations
Move any EOL or Postfix annotations from the specified code object to the current code object.
(Inherited from CodeObject.)
Public methodMoveEOLComment(CodeObject)
Move any EOL comment from the specified code object to the current code object.
(Inherited from CodeObject.)
Public methodMoveEOLComment(Token)
Move any EOL comment from the specified token to the current code object.
(Inherited from CodeObject.)
Public methodMoveEOLComment(Token, Boolean, Boolean)
Move any EOL comment from the specified token to the current code object.
(Inherited from CodeObject.)
Public methodMoveEOLCommentAsInfix
Move any EOL comment from the specified token to the current code object as an Infix EOL comment.
(Inherited from CodeObject.)
Public methodMoveFormatting(CodeObject)
Move formatting from the specified code object to the current object.
(Inherited from CodeObject.)
Public methodMoveFormatting(Token)
Move formatting from the specified token to the current object.
(Inherited from CodeObject.)
Public methodMovePrefixAnnotationsAs
Move any prefix annotations on the specified code object to the current code object as the specified type of annotation.
(Inherited from CodeObject.)
Protected methodNoStdLib
Protected methodNotifyListedAnnotationAdded
Propagate the listed annotation to the parent Solution.
(Overrides CodeObjectNotifyListedAnnotationAdded(Annotation).)
Protected methodNotifyListedAnnotationRemoved
Remove the listed annotation from the parent Solution.
(Overrides CodeObjectNotifyListedAnnotationRemoved(Annotation).)
Public methodStatic memberParse(String, Solution, ActionLoadStatus, CodeObject, Boolean)
Parse a project from a file.
Public methodStatic memberParse(String, String, Guid, Guid, Solution, ActionLoadStatus, CodeObject, Boolean)
Parse a project from a file.
Public methodParseAndResolveCodeUnits
Parse and resolve all CodeUnits in the Project.
Protected methodParseAnnotations(Parser, CodeObject)
Parse annotations - specifically, compiler directives around things such as TypeParameters or ParameterDecls.
(Inherited from CodeObject.)
Protected methodParseAnnotations(Parser, CodeObject, Boolean, Boolean)
Parse any comments, attributes, compiler directives.
(Inherited from CodeObject.)
Public methodParseCodeUnits
Parse all CodeUnits in the Project.
Protected methodParseExpectedToken
Parse the specified expected token, attaching a parse error to the current object if it doesn't exist.
(Inherited from CodeObject.)
Protected methodParseFileItem
Parse file items.
Public methodParseName
Parse the specified name into a NamespaceRef or TypeRef, or a Dot or Lookup expression that evaluates to one.
Protected methodParseProjectFile
Parse a project file contents (either from a standard VS project file, or from an imported .props or .targets project file).
Protected methodParseUnusedAnnotations
Parse annotations from the Unused list.
(Inherited from CodeObject.)
Protected methodParseUserSettings
Parse user settings from any ".csproj.user" file.
Protected methodParseWebConfig
Parse any 'Web.Config' file for configuration and references.
Protected methodParseWebSiteProject
Parse a web site project.
Public methodRemoveAllAnnotationsT
Remove all annotations of the specified type from this object.
(Inherited from CodeObject.)
Public methodRemoveAllAnnotationsWhereT
Remove all annotations from this object where the specified predicate is true.
(Inherited from CodeObject.)
Public methodRemoveAllMessages
Remove all messages from this object, or optionally only from the specified source.
(Inherited from CodeObject.)
Public methodRemoveAttribute
Remove the attribute expression with the specified name.
(Inherited from CodeObject.)
Public methodRemoveCodeUnit
Remove the specified CodeUnit from the Project, also removing the corresponding ProjectFileItem.
Public methodRemoveFromDictionary
Remove the CodeObject from the specified dictionary.
Public methodRenameCodeUnit
Rename the file name of the specified CodeUnit in the Project, also renaming the corresponding ProjectFileItem.
Public methodResolve(ResolveFlags)
Resolve all child symbolic references.
(Inherited from CodeObject.)
Public methodResolve(ResolveCategory, ResolveFlags)
Resolve all child symbolic references, using the specified ResolveCategory and ResolveFlags.
(Inherited from CodeObject.)
Public methodResolveAttributes
Resolve any attached attributes.
(Inherited from CodeObject.)
Public methodResolveCodeUnits
Resolve all CodeUnits in the Project.
Public methodResolveDocComments
Resolve any references in attached documentation comments.
(Inherited from CodeObject.)
Public methodResolveGotoTargetUp
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.)
Public methodResolveReferences
Resolve all references.
Public methodResolveRefUp
Resolve child code objects that match the specified name, moving up the tree until a complete match is found.
(Overrides CodeObjectResolveRefUp(String, Resolver).)
Public methodResolveRefUpSkipMethodBody
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.)
Public methodSave
Save the Project.
Public methodSaveAll
Save the Project plus all CodeUnits.
Public methodSaveAs
Save the Project to the specified file name.
Public methodSetCurrentConfiguration
Set the current configuration using the specified index.
Protected methodSetDefineConstants(String)
Set any defined constants from the specified string.
Protected methodSetDefineConstants(String, HashSetString)
Protected methodSetField(Object, Object, Boolean)
Set a field of a code object, including setting the parent, and optional formatting.
(Inherited from CodeObject.)
Protected methodSetFieldT(ChildListT, ChildListT)
Set a ChildList collection field of a code object, including setting the parent.
(Inherited from CodeObject.)
Protected methodSetFieldT(T, T, Boolean)
Set a field of a code object, including setting the parent, and optional formatting.
(Inherited from CodeObject.)
Protected methodSetFormatFlag (Inherited from CodeObject.)
Protected methodSetLineCol(CodeObject)
Set the line and column numbers to those in the specified CodeObject.
(Inherited from CodeObject.)
Protected methodSetLineCol(Token)
Set the line and column numbers to those in the specified token.
(Inherited from CodeObject.)
Public methodSetNewLines
Special method to set the newline count without setting the NewLinesSet flag.
(Inherited from CodeObject.)
Protected methodSetStartLineCol
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.)
Public methodToString
Render the type of the code object and its description as a string.
(Inherited from CodeObject.)
Public methodUndefineCompilerDirectiveSymbol
Un-define a compiler direcive symbol for the current configuration.
Public methodUndefineConstant
Un-define a constant.
Public methodUnload
Unload the project - clear its global namespace and loaded assemblies.
Public methodUpdateAllDeclExpressions
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.)
Protected methodUpdateLineCol
Update the line and column numbers according to the current positions in the CodeWriter, if the UpdateLineCol flag is set.
(Inherited from CodeObject.)
Protected methodWriteRaw
Protected methodWriteUnhandledData
Top
See Also