Namespace CilFi.Patterns
Classes
- AndPattern<T>
Defines a pattern that requires a collection of sub-patterns to be satisfied.
- AnyPattern<T>
Defines the pattern that accepts any instance of the provided type.
- ArrayTypePattern
Defines the pattern that matches on array type signatures.
- ArrayTypePattern.MatchNode
Represents a match node produced by a ArrayTypePattern.
- AssemblyScopePattern
Defines the pattern that matches on assembly resolution scopes in a type.
- AssemblyScopePattern.MatchNode
Represents a match node produced by a AssemblyScopePattern.
- BlockAndExpression
Represents an expression that computes the logical AND between two expressions.
- BlockExpression
Represents a boolean expression comprising blocks
- BlockExpressionContext
Describes a context in which a BlockExpression can be evaluated in.
- BlockIdExpression
Represents an expression that references a block by its name.
- BlockOrExpression
Represents an expression that computes the logical OR between two expressions.
- BlocksBodyPattern
Defines the pattern matching CIL method bodies based on blocks of CIL instruction sequences.
- BlocksBodyPattern.MatchNode
Represents the match node corresponding to a BlocksBodyPattern
- ByReferenceTypePattern
Defines the pattern that matches on by-reference type signature.
- CilBlockPattern
Defines the pattern that matches on a single basic block in a control flow graph of a CIL method body.
- CilInstructionPattern
Defines a pattern matching on individual CIL instructions.
- CilInstructionPattern.MatchNode
Represents a match node produced by a CilInstructionPattern.
- CorLibScopePattern
Defines the pattern matching on CorLib assembly resolution scopes (e.g., mscorlib, netstandard or System.Runtime).
- FieldDescriptorPattern
Defines the pattern matching on field descriptors.
- FieldDescriptorPattern.MatchNode
Represents a match node produced by a FieldDescriptorPattern.
- FlagsPattern<T>
Defines the pattern for bitmasks.
- FlatBodyPattern
Defines the pattern matching CIL method bodies as flat CIL instruction sequences.
- FlatBodyPattern.MatchNode
Represents a match node produced by a FlatBodyPattern.
- GenericInstanceTypeSignaturePattern
Defines the pattern matching on generic instance type signatures.
- GenericInstanceTypeSignaturePattern.MatchNode
Represents a match node produced by a GenericInstanceTypeSignaturePattern.
- GenericParameterPattern
Defines the pattern matching on generic parameters.
- GenericParameterPattern.MatchNode
Represents a match node produced by a GenericParameterPattern.
- GenericParameterSignaturePattern
Defines the pattern matching on generic parameter signatures.
- GenericParameterSignaturePattern.MatchNode
Represents a match node produced by a GenericParameterSignaturePattern.
- IntegerPattern
Defines the pattern matching on integer-like values.
- ListPattern<T>
Defines the pattern matching on a sequence of elements.
- LiteralPattern<T>
Defines the pattern matching on exact instances of a type.
- LocalPattern
Defines the pattern matching on a local variable in a CIL method body.
- LocalPattern.MatchNode
Represents a match node produced by a LocalPattern.
- LocalsPattern
Defines the pattern matching the locals within a CIL method body.
- LocalsPattern.MatchNode
Represents a match node produced by a LocalsPattern.
- MatchingContext
Provides a context for a signature scanning process.
- MethodDefinitionPattern
Defines the pattern matching on methods defined in a .NET module.
- MethodDefinitionPattern.MatchNode
Represents a match node produced by a MethodDefinitionPattern.
- MethodReferencePattern
Defines the pattern matching on method descriptors.
- MethodReferencePattern.MatchNode
Represents a match node produced by a MethodReferencePattern.
- ModuleTypePattern
Defines the pattern matching on module or global types in a .NET module.
- NestedTypeIdentifierPattern
Defines the pattern matching on nested type references.
- NestedTypeIdentifierPattern.MatchNode
Represents a match node produced by a NestedTypeIdentifierPattern.
- NotNullPattern<T>
Defines the pattern matching on any non-null instance of the provided type.
- NullPattern<T>
Defines the pattern matching on null instances of the provided type.
- OrPattern<T>
Defines the pattern that combines multiple sub-patterns for which at least one needs to be satisfied.
- ParameterPattern
Defines the pattern matching on parameters defined by a .NET method.
- ParameterPattern.MatchNode
Represents a match node produced by a ParameterPattern.
- Pattern
Defines a pattern for a specific object.
- PatternExtensions
Provides extensions to Pattern<T>.
- Pattern<T>
Defines a pattern for a specific type of value.
- PointerTypePattern
Defines the pattern matching on pointer type signatures.
- PredicatePattern<T>
Wraps a predicate into a pattern.
- ReadOnlyListPattern<T>
Defines the pattern matching on a sequence of elements.
- RegexPattern
Defines the pattern matching on strings that follow a regular expression.
- SetPattern<T>
Defines the pattern that matches on (sub)-sets of elements.
- TypeDefOrRefPattern
Defines a pattern matching on type signatures.
- TypeDefOrRefPattern.MatchNode
Represents a match node produced by a TypeDefOrRefPattern.
- TypeIdentifierPattern
Defines the pattern matching on top-level type identifiers.
- TypeIdentifierPattern.MatchNode
Represents a match node produced by a TypeIdentifierPattern.
- TypeSpecificationPattern
Defines the pattern matching type specifications.
- TypeSpecificationPattern.MatchNode
Represents a match node produced by a TypeSpecificationPattern.
Enums
- CilBlockPatternAttributes
Defines all CIL basic block matching flags.
- SetPatternAttributes
Defines allp ossible set pattern matching rules.