diff --git a/src/NetArchTest.Rules/NetArchTest.Rules.csproj b/src/NetArchTest.Rules/NetArchTest.Rules.csproj
index 2ed3ac7..f6997c0 100644
--- a/src/NetArchTest.Rules/NetArchTest.Rules.csproj
+++ b/src/NetArchTest.Rules/NetArchTest.Rules.csproj
@@ -20,8 +20,6 @@
-
-
diff --git a/src/NetArchTest.Rules/NetArchTest.Rules.xml b/src/NetArchTest.Rules/NetArchTest.Rules.xml
deleted file mode 100644
index 1fe215f..0000000
--- a/src/NetArchTest.Rules/NetArchTest.Rules.xml
+++ /dev/null
@@ -1,1772 +0,0 @@
-
-
-
- NetArchTest.Rules
-
-
-
-
- A set of conditions and types that have have conjunctions (i.e. "and", "or") and executors (i.e. Types(), GetResult()) applied to them.
-
-
-
- A list of types that conditions can be applied to.
-
-
- The sequence of conditions that is applied to the type of list.
-
-
- Determines the polarity of the selection, i.e. "should" or "should not".
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Returns an indication of whether all the selected types satisfy the conditions.
-
- An indication of whether the conditions are true, along with a list of types failing the check if they are not.
-
-
-
- Returns the number of types that satisfy the conditions.
-
- A list of types.
-
-
-
- Returns the list of types that satisfy the conditions.
-
- A list of types.
-
-
-
- Specifies that any subsequent condition should be treated as an "and" condition.
-
- An set of conditions that can be applied to a list of classes.
- And() has higher priority than Or() and it is computed first.
-
-
-
- Specifies that any subsequent conditions should be treated as part of an "or" condition.
-
- An set of conditions that can be applied to a list of classes.
-
-
-
- A set of conditions that can be applied to a list of types.
-
-
-
- A list of types that conditions can be applied to.
-
-
- The sequence of conditions that is applied to the type of list.
-
-
- Determines the polarity of the selection, i.e. "should" or "should not".
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Selects types that have a specific name.
-
- The name of the class to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not have a particular name.
-
- The name of the class to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types according to a regular expression matching their name.
-
- The regular expression pattern to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types according to a regular expression that does not match their name.
-
- The regular expression pattern to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose names start with the specified text.
-
- The text to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose names start with the specified text.
-
- The text to match against.
- The string comparer.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose names do not start with the specified text.
-
- The text to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose names do not start with the specified text.
-
- The text to match against.
- The string comparer.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose names do not end with the specified text.
-
- The text to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose names do not end with the specified text.
-
- The text to match against.
- The string comparer.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose names do not end with the specified text.
-
- The text to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose names do not end with the specified text.
-
- The text to match against.
- The string comparer.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types are decorated with a specific custom attribut.
-
- The attribute to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are not decorated with a specific custom attribute.
-
- The attribute to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are decorated with a specific custom attribute or derived one.
-
- The base attribute to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types are not decorated with a specific custom attribute or derived one.
-
- The base attribute to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that inherit a particular type.
-
- The type to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not inherit a particular type.
-
- The type to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that implement a particular interface.
-
- The interface type to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not implement a particular interface.
-
- The interface type to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are marked as abstract.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are not marked as abstract.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are classes.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are not classes.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that have generic parameters.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not have generic parameters.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are interfaces.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are not interfaces.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are static.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are not static.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are nested.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are nested and public.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are nested and private.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are not nested.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are not nested and public.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are not nested and private.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are have public scope.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not have public scope.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types according that are marked as sealed.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types according that are not marked as sealed.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are immutable.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that are mutable.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types according to whether they have nullable members.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types according to whether they have nullable members.
-
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that reside in a particular namespace.
-
- The namespace to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not reside in a particular namespace.
-
- The namespace to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that reside in a namespace matching a regular expression.
-
- The regular expression pattern to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not reside in a namespace matching a regular expression.
-
- The regular expression pattern to match against.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types whose namespaces start with a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces start with a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces end with a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces end with a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces contain a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces contain a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that have a dependency on a particular type.
-
- The dependency to match against. This can be a namespace or a specific type.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that have a dependency on any of the supplied types.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that have a dependency on all of the particular types.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that have a dependency on any of the supplied types and cannot have any other dependency.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not have a dependency on a particular type.
-
- The dependency type to match against. This can be a namespace or a specific type.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not have a dependency on any of the particular types.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not have a dependency on all of the particular types.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that have a dependency other than any of the given dependencies.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that meet a custom rule.
-
- An instance of the custom rule.
- An updated set of conditions that can be applied to a list of types.
-
-
- The list of dependencies being searched for.
-
-
-
- Searching search tree is costly (it requires a lot of operations on strings like SubString, IndexOf).
- For a given type we always get the same answer, so let us cache what search tree returns.
-
-
-
-
- Holds tree structure of full names; child nodes of each parent are indexed for optimal time of search.
-
-
- The sequence {"System.Linq", "System.Object", "System", "System.Collections.Generic", "NetArchTest.TestStructure.Dependencies.Examples"}
- produces the tree
- ""
- |- "NetArchTest"
- | |- "TestStructure"
- | |- "Dependencies"
- | |- "Examples" (terminated)
- |
- |- "System" (terminated)
- |- "Collections"
- | |- "Generic" (terminated)
- |
- |- "Linq" (terminated)
- |- "Object" (terminated)
-
-
- In the example above the flag "terminated" means that marked name is presented in the sequence the tree is built for.
- Despite of the fact that the namespace "System" takes over its descendants "Linq", "Object" and "Collections.Generic"
- all of them are presented in the tree. For dependency search it provides the same results as original implementation
- based on the String.StartsWith(...) does.
-
-
-
- Maps child namespace to its root node.
-
-
- Returns full path from root to terminated node. Only available on terminated node.
-
-
-
- Adds new child node with given name or returns existing one.
-
- Name of child node.
- Child node with given name.
-
-
-
- Checks whether child node with given name exists and returns it.
-
- Name of child node of interest.
- Child node with given name, if it exists; otherwise, null.
- True, if child node with given name exists; otherwise, false.
-
-
- Holds the root for the namespace tree.
-
-
-
- Initially fills the tree with given names.
-
- Sequence of full names.
- if names should be parsed by mono parser
-
-
-
- Splits full name into subnamespaces and adds corresponding nodes to the tree.
-
- Can be empty, but not null.
- if names should be parsed by mono parser
-
-
- Count of terminated nodes in the tree.
-
-
-
- Retrieves the sequence of all matching names for given full name.
- A name matches some full name, if its node is terminated and whole path from tree root to that node
- builds the chain of namespaces in the full name.
-
- Full name to search matching names for.
- Sequence of all matching names.
-
- If the tree contains "System.Collections" and "System.Collections.IList", both are returned
- for the full name "System.Collections.IList".
-
-
-
-
- Recursively extracts every part from type full name
-
-
-
-
- Similar tree to , but this is aware of the structure of type full name,
- which allows traversing tree without allocating new strings.
-
-
-
-
- Finds dependencies within a given set of types.
-
-
-
-
- Finds types that have a dependency on any item in the given list of dependencies.
-
- The set of type definitions to search.
- The set of dependencies to look for.
- A list of found types.
-
-
-
- Finds types that have a dependency on every item in the given list of dependencies.
-
- The set of type definitions to search.
- The set of dependencies to look for.
- A list of found types.
-
-
-
- Finds types that may have a dependency on any item in the given list of dependencies, but cannot have a dependency that is not in the list.
-
- The set of type definitions to search.
- The set of dependencies to look for.
- A list of found types.
-
-
-
- Finds types that have a dependency on any item in the given list of dependencies, but cannot have a dependency that is not in the list.
-
- The set of type definitions to search.
- The set of dependencies to look for.
- A list of found types.
-
-
-
- Finds types that have a dependency on every item in the given list of dependencies, but cannot have a dependency that is not in the list.
-
- The set of type definitions to search.
- The set of dependencies to look for.
- A list of found types.
-
-
-
- Finds matching dependencies for a given type by walking through the type.
-
-
-
-
- Recursively checks every array, generic or not type reference
-
- for closed generic : List{Tuple{Task{int}, int}}
- it will check: List{Tuple{Task{int}, int}}, Tuple{Task{int}, int}, Task{int}, int, int
- for open generic : List{T}
- only List will be checked, T as a generic parameter will be skipped
- for arrays: int[][]
- it will check : int[][], int[], int
-
-
-
-
-
- Manages the results of dependency search.
-
-
-
- The list of dependencies that have been found in the search.
-
-
-
- If we already know the final answer to the question if type was found,
- doing another search will not change the result
-
-
-
-
- Extensions for the class.
-
-
-
-
- Tests whether a field is readonly
-
- The field to test.
- An indication of whether the field is readonly.
-
-
-
- Tests whether a field is nullable
-
- The field to test.
- An indication of whether the field is nullable.
-
-
-
- Extensions for the class.
-
-
-
-
- Tests whether a property is readonly
-
- The property to test.
- An indication of whether the property is readonly.
-
-
-
- Tests whether a property is nullable
-
- The property to test.
- An indication of whether the property is nullable.
-
-
-
- Extensions for the class.
-
-
-
-
- Tests whether one class inherits from another.
-
- The class that is inheriting from the parent.
- The parent that is inherited.
- An indication of whether the child inherits from the parent.
-
-
-
- Tests whether two type definitions are from the same assembly.
- The comparison is based on the full assembly names.
-
-
-
- An indication of whether the both types are from the same assembly.
-
-
-
- Tests whether the provided types are the same type.
-
-
-
- An indication of whether the types are the same.
-
-
-
- Enumerate the base classes throughout the chain of inheritence.
-
- The class to enumerate.
- The enumeration of base classes.
-
-
-
- Convert the definition to a object instance.
-
- The type definition to convert.
- The equivalent object instance.
-
-
-
- Tests whether a class is immutable, i.e. all public fields are readonly and properties have no set method
-
- The class to test.
- An indication of whether the type is immutable
-
-
-
- Tests whether a Type has any memebers that are non-nullable value types
-
- The class to test.
- An indication of whether the type has any memebers that are non-nullable value types
-
-
-
- Returns namespace of the given type, if the type is nested, namespace of containing type is returned instead
-
-
- For nested classes this will take the name of the declaring class. See https://github.com/BenMorris/NetArchTest/issues/73
-
-
-
-
- Extensions for the class.
-
-
-
-
- Converts the value to a instance.
-
- The type to convert.
- The converted value.
-
-
-
- Tests whether a Type is a non-nullable value type
-
- The class to test.
- An indication of whether the type has any memebers that are non-nullable value types
-
-
-
- Returns namespace of the given type, if the type is nested, namespace of containing type is returned instead
-
-
-
-
- Defines the various functions that can be applied to a collection of types.
-
-
- These are used by both predicates and conditions so warrant a common definition.
-
-
-
- The base delegate type used by every function.
-
-
- Function for finding a specific type name.
-
-
- Function for matching a type name using a regular expression.
-
-
- Function for matching the start of a type name.
-
-
- Function for matching the end of a type name.
-
-
- Function for finding classes with a particular custom attribute.
-
-
- Function for finding classes decorated with a particular custom attribute or derived one
-
-
- Function for finding classes that inherit from a particular type.
-
-
- Function for finding classes that implement a particular interface.
-
-
- Function for finding abstract classes.
-
-
- Function for finding classes.
-
-
- Function for finding interfaces.
-
-
- Function for finding static classes.
-
-
- Function for finding types with generic parameters.
-
-
- Function for finding nested classes.
-
-
- Function for finding nested public classes.
-
-
- Function for finding nested private classes.
-
-
- Function for finding public classes.
-
-
- Function for finding sealed classes.
-
-
- Function for finding immutable classes.
-
-
- Function for finding nullable classes.
-
-
- Function for finding types in a particular namespace.
-
-
- Function for matching a type name using a regular expression.
-
-
- Function for finding types that have a dependency on any of the supplied types.
-
-
- Function for finding types that have a dependency on all of the supplied types.
-
-
- Function for finding types that have a dependency on type other than one of the supplied types.
-
-
- Function for finding public classes.
-
-
-
- A sequence of function calls that are combined to select types.
-
-
-
- Holds the groups of function calls.
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Adds a function call to the current list.
-
-
-
-
- Creates a new logical grouping of function calls.
-
-
-
-
- Executes all the function calls that have been specified.
-
- A list of types that are selected by the predicates (or not selected if optional reversing flag is passed).
-
-
-
- Represents a single function call.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- A delegate for a function call.
-
-
-
-
- The input value for the function call.
-
-
-
-
- The Condition to apply to the call - i.e. "is" or "is not".
-
-
-
-
- An externally defined rule that can be applied as a condition or a predicate.
-
-
-
-
- Tests whether the supplied type meets the rule.
-
- The type to be tested.
- The result of the test.
-
-
-
- An aggregate of rules and results that can be used for reporting.
-
-
-
- The simple name of the policy.
-
-
- A detailed description of the policy.
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Defines a policy that aggregates a set of rules together for reporting.
-
-
-
-
- Sets the types that the policy will apply to.
-
-
-
-
- Sets the types that the policy will apply to.
-
-
-
-
- An aggregate of rules and results that can be used for reporting.
-
-
-
- The function that defines the list of types to execute against each rule.
-
-
- The list of tests that have been added to the policy.
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- The simple name of the policy.
-
-
-
-
- A detailed description of the policy.
-
-
-
-
- Adds a rule to the policy that can optionally be marked with a name and description.
-
-
-
-
- Adds a rule to the policy that can optionally be marked with a name and description.
-
-
-
-
- Evaluates all the rules that have been added to the policy against the types defined for the policy.
-
- A list of results.
-
-
-
- A single test result for a policy.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Gets a flag indicating the success or failure of the test.
-
-
-
-
- Gets a collection populated with a list of any types that failed the test.
-
-
-
-
- Gets the simple name associated with the test.
-
-
-
-
- Gets the detailed description associated with the test.
-
-
-
-
- A set of results for a policy that has been executed against a list of types.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Gets whether or not the policy has any rule violations
-
-
-
-
- Gets the results of each rule that was added the policy.
-
-
-
-
- Gets the simple name associated with the policy.
-
-
-
-
- Gets the detailed description associated with the policy.
-
-
-
-
- A single test that has been added to a policy.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- The definition of the test expressed as a function.
-
-
-
-
- Gets the simple name associated with the test.
-
-
-
-
- Gets the detailed description associated with the test.
-
-
-
-
- A set of predicates and types that have have conjunctions (i.e. "and", "or") and executors (i.e. Types(), TypeDefinitions()) applied to them.
-
-
-
- A list of types that conditions can be applied to.
-
-
- The sequence of conditions that is applied to the type of list.
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Links a predicate defining a set of classes to a condition that tests them.
-
- A condition that tests classes against a given criteria.
-
-
-
- Links a predicate defining a set of classes to a condition that tests them.
-
- A condition that tests classes against a given criteria.
-
-
-
- Returns the type definitions returned by these predicate.
-
- A list of type definitions.
-
-
-
- Returns the types returned by these predicates.
-
- A list of types.
-
-
-
- Specifies that any subsequent predicates should be treated as "and" conditions.
-
- An set of predicates that can be applied to a list of classes.
- And() has higher priority than Or() and it is computed first.
-
-
-
- Specifies that any subsequent predicates should be treated as part of an "or" condition.
-
- An set of predicates that can be applied to a list of classes.
-
-
-
- A set of predicates that can be applied to a list of types.
-
-
-
- A list of types that conditions can be applied to.
-
-
- The sequence of conditions that is applied to the type of list.
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Selects types that have a specific name.
-
- The name of the class to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that do not have a particular name.
-
- The name of the class to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types according to a regular expression matching their name.
-
- The regular expression pattern to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types according to a regular expression that does not match their name.
-
- The regular expression pattern to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose names start with the specified text.
-
- The text to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose names start with the specified text.
-
- The text to match against.
- The string comparer.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose names do not start with the specified text.
-
- The text to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose names do not start with the specified text.
-
- The text to match against.
- The string comparer.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose names end with the specified text.
-
- The text to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose names end with the specified text.
-
- The text to match against.
- The string comparer.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose names do not end with the specified text.
-
- The text to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose names do not end with the specified text.
-
- The text to match against.
- The string comparer.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are decorated with a specific custom attribute.
-
- The attribute to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are decorated with a specific custom attribute or derived one.
-
- The base attribute to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are not decorated with a specific custom attribute.
-
- The attribute to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are not decorated with a specific custom attribute or derived one.
-
- The base attribute to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that inherit a particular type.
-
- The type to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that do not inherit a particular type.
-
- The type to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that implement a particular interface.
-
- The interface type to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that do not implement a particular interface.
-
- The interface type to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are marked as abstract.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are not marked as abstract.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are classes.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are not classes.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that have generic parameters.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that do not have generic parameters.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are interfaces.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are not interfaces.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are static.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are not static.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are nested.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are nested and declared as public.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are nested and declared as private.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are not nested.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are not nested and declared as public.
-
- An updated set of predicates that can be applied to a list of types.
- NB: This method will return non-nested types and nested types that are declared as private.
-
-
-
- Selects types that are not nested and declared as private.
-
- An updated set of predicates that can be applied to a list of types.
- NB: This method will return non-nested types and nested types that are declared as public.
-
-
-
- Selects types that have public scope.
-
-
- This method will only act on types that are visible to the function. Use InternalsVisibleTo if testing from a separate assembly.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that do not have public scope.
-
-
- This method will only act on types that are visible to the function. Use InternalsVisibleTo if testing from a separate assembly.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types according that are marked as sealed.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types according that are not marked as sealed.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are immutable.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that are mutable.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that have only nullable members.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that have some non-nullable members.
-
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that reside in a particular namespace.
-
- The namespace to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that do not reside in a particular namespace.
-
- The namespace to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces match a regular expression.
-
- The regular expression pattern to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces start with a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces end with a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces contain a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces do not match a regular expression.
-
- The regular expression pattern to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces start with a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces end with a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types whose namespaces contain a particular name part.
-
- The namespace part to match against.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that have a dependency on a particular type.
-
- The dependency type to match against. This can be a namespace or a specific type.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that have a dependency on any of the supplied types.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that have a dependency on all of the particular types.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that have a dependency on any of the supplied types and cannot have any other dependency.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not have a dependency on a particular type.
-
- The dependency type to match against. This can be a namespace or a specific type.
- An updated set of predicates that can be applied to a list of types.
-
-
-
- Selects types that do not have a dependency on any of the particular types.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that do not have a dependency on all of the particular types.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that have a dependency other than any of the given dependencies.
-
- The dependencies to match against. These can be namespaces or specific types.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Selects types that meet a custom rule.
-
- An instance of the custom rule.
- An updated set of conditions that can be applied to a list of types.
-
-
-
- Defines a result from a test carried out on a .
-
-
-
- The list of types that failed the test.
-
-
-
- Gets a flag indicating the success or failure of the test.
-
-
-
-
- Gets a list of the types that failed the test.
-
-
- This method loads all the types and may throw dependency loading errors if the test project does not have a direct dependency on the type being loaded.
-
-
-
-
- Gets a list of the type nmames that failed the test.
-
-
- This is a "safer" way of getting a list of failed types as it does not load the types when enumerating the list. This can lead to dependency loading errors.
-
-
-
-
- Creates a new instance of indicating a successful test.
-
- Instance of
-
-
-
- Creates a new instance of indicating a failed test.
-
- Instance of
-
-
-
- Creates a list of types that can have predicates and conditions applied to it.
-
-
-
- The list of types represented by this instance.
-
-
- The list of namespaces to exclude from the current domain.
-
-
-
- Prevents any external class initializing a new instance of the class.
-
- The list of types for the instance.
-
-
-
- Creates a list of types based on all the assemblies in the current AppDomain
-
- A list of types that can have predicates and conditions applied to it.
-
-
-
- Creates a list of types based on a particular assembly.
-
- The assembly to base the list on.
- An optional list of search directories to allow resolution of referenced assemblies.
- A list of types that can have predicates and conditions applied to it.
-
-
-
- Creates a list of types based on a list of assemblies.
-
- The assemblies to base the list on.
- An optional list of search directories to allow resolution of referenced assemblies.
- A list of types that can have predicates and conditions applied to it.
-
-
-
- Creates a list of all the types in a particular namespace.
-
- The namespace to list types for. This is case insensitive.
- A list of types that can have predicates and conditions applied to it.
-
-
-
- Creates a list of all the types in a particular module file.
-
- The filename of the module. This is case insensitive.
- A list of types that can have predicates and conditions applied to it.
- Assumes that the module is in the same directory as the executing assembly.
-
-
-
- Creates a list of all the types found on a particular path.
-
- The relative path to load types from.
- An optional list of search directories to allow resolution of referenced assemblies.
- A list of types that can have predicates and conditions applied to it.
-
-
-
- Recursively fetch all the nested types in a collection of types.
-
- The expanded collection of types
-
-
-
- Returns the list of objects describing the types in this list.
-
- The list of objects in this list.
-
-
-
- Returns the list of objects describing the types in this list.
-
- The list of objects in this list.
-
-
-
- Allows a list of types to be applied to one or more filters.
-
- A list of types onto which you can apply a series of filters.
-
-
-
- Applies a set of conditions to the list of types.
-
-
-
-
-
- Applies a negative set of conditions to the list of types.
-
-
-
-
-
- Reads the assembly, ignoring a BadImageFormatException
-
- The path to the exception
- A set of optional parameters - normally used to specify custom assembly resolvers.
- The assembly definition for the path (if it exists).
-
-
-