C# Class System.Xml.Xsl.IlGen.OptimizerPatterns

As the Qil graph is traversed, patterns are identified. Subtrees that match these patterns are annotated with this class, which identifies the matching patterns and their arguments.
Inheritance: IQilAnnotation
Show file Open project: gbarnett/shared-source-cli-2.0 Class Usage Examples

Public Methods

Method Description
AddArgument ( OptimizerPatternArgument argId, object arg ) : void

Add an argument to one of the matching patterns.

AddPattern ( OptimizerPatternName pattern ) : void

Add a pattern to the list of patterns that the annotated node matches.

GetArgument ( OptimizerPatternArgument argNum ) : object

Get an argument of one of the matching patterns.

Inherit ( QilNode ndSrc, QilNode ndDst, OptimizerPatternName pattern ) : void

Create and initialize OptimizerPatterns annotation for the specified node.

MatchesPattern ( OptimizerPatternName pattern ) : bool

Return true if the annotated node matches the specified pattern.

Read ( QilNode nd ) : OptimizerPatterns

Get OptimizerPatterns annotation for the specified node. Lazily create if necessary.

ToString ( ) : string

Return string representation of this annotation.

Write ( QilNode nd ) : OptimizerPatterns

Create and initialize OptimizerPatterns annotation for the specified node.

Method Details

AddArgument() public method

Add an argument to one of the matching patterns.
public AddArgument ( OptimizerPatternArgument argId, object arg ) : void
argId OptimizerPatternArgument
arg object
return void

AddPattern() public method

Add a pattern to the list of patterns that the annotated node matches.
public AddPattern ( OptimizerPatternName pattern ) : void
pattern OptimizerPatternName
return void

GetArgument() public method

Get an argument of one of the matching patterns.
public GetArgument ( OptimizerPatternArgument argNum ) : object
argNum OptimizerPatternArgument
return object

Inherit() public static method

Create and initialize OptimizerPatterns annotation for the specified node.
public static Inherit ( QilNode ndSrc, QilNode ndDst, OptimizerPatternName pattern ) : void
ndSrc QilNode
ndDst QilNode
pattern OptimizerPatternName
return void

MatchesPattern() public method

Return true if the annotated node matches the specified pattern.
public MatchesPattern ( OptimizerPatternName pattern ) : bool
pattern OptimizerPatternName
return bool

Read() public static method

Get OptimizerPatterns annotation for the specified node. Lazily create if necessary.
public static Read ( QilNode nd ) : OptimizerPatterns
nd QilNode
return OptimizerPatterns

ToString() public method

Return string representation of this annotation.
public ToString ( ) : string
return string

Write() public static method

Create and initialize OptimizerPatterns annotation for the specified node.
public static Write ( QilNode nd ) : OptimizerPatterns
nd QilNode
return OptimizerPatterns