ILGPU  0.9.0
ILGPU.IR.Rewriting.IRewriterContext Interface Reference

A rewriter context to process values. More...

Inheritance diagram for ILGPU.IR.Rewriting.IRewriterContext:
ILGPU.IR.Rewriting.RewriterContext ILGPU.IR.Rewriting.SSARewriterContext< TVariable >

Public Member Functions

bool IsConverted (Value value)
 Returns true if the given value has been converted. More...
 
bool MarkConverted (Value value)
 Marks the given value as converted. More...
 
TValue Replace< TValue > (Value value, TValue newValue)
 Replaces the given value with the new value. More...
 
TValue ReplaceAndRemove< TValue > (Value value, TValue newValue)
 Replaces the given value with the new value and removes it from the block. More...
 
void Remove (Value value)
 Removes the given value from the block. More...
 

Properties

BasicBlock.Builder Builder [get]
 Returns the associated builder. More...
 
BasicBlock Block [get]
 Returns the associated block. More...
 

Detailed Description

A rewriter context to process values.

Member Function Documentation

bool ILGPU.IR.Rewriting.IRewriterContext.IsConverted ( Value  value)

Returns true if the given value has been converted.

Parameters
valueThe value to check.
Returns
True, if the given value has been converted.

Implemented in ILGPU.IR.Rewriting.SSARewriterContext< TVariable >, and ILGPU.IR.Rewriting.RewriterContext.

bool ILGPU.IR.Rewriting.IRewriterContext.MarkConverted ( Value  value)

Marks the given value as converted.

Parameters
valueThe value to mark.
Returns
True, if the element has been added to the set of value.

Implemented in ILGPU.IR.Rewriting.SSARewriterContext< TVariable >, and ILGPU.IR.Rewriting.RewriterContext.

void ILGPU.IR.Rewriting.IRewriterContext.Remove ( Value  value)

Removes the given value from the block.

Parameters
valueThe current value.

Implemented in ILGPU.IR.Rewriting.RewriterContext, and ILGPU.IR.Rewriting.SSARewriterContext< TVariable >.

TValue ILGPU.IR.Rewriting.IRewriterContext.Replace< TValue > ( Value  value,
TValue  newValue 
)

Replaces the given value with the new value.

Template Parameters
TValueThe value type of the new value.
Parameters
valueThe current value.
newValueThe new value.
Returns
Returns the new value.

Implemented in ILGPU.IR.Rewriting.SSARewriterContext< TVariable >, and ILGPU.IR.Rewriting.RewriterContext.

Type Constraints
TValue :Value 
TValue ILGPU.IR.Rewriting.IRewriterContext.ReplaceAndRemove< TValue > ( Value  value,
TValue  newValue 
)

Replaces the given value with the new value and removes it from the block.

Template Parameters
TValueThe value type of the new value.
Parameters
valueThe current value.
newValueThe new value.
Returns
Returns the new value.

Implemented in ILGPU.IR.Rewriting.RewriterContext, and ILGPU.IR.Rewriting.SSARewriterContext< TVariable >.

Type Constraints
TValue :Value 

Property Documentation

BasicBlock ILGPU.IR.Rewriting.IRewriterContext.Block
get

Returns the associated block.

BasicBlock.Builder ILGPU.IR.Rewriting.IRewriterContext.Builder
get

Returns the associated builder.


The documentation for this interface was generated from the following file: