Skip to main content
Version: Next

'tuples' Dialect

A general dialect that adds a tuple strem type

Operations​

tuples.get_param_val (::lingodb::compiler::dialect::tuples::GetParamVal)​

Get param value operation

Syntax:

operation ::= `tuples.get_param_val` $param `:` type($param) `->` type($res) attr-dict

Traits: AlwaysSpeculatableImplTrait

Interfaces: ConditionallySpeculatable, NoMemoryEffect (MemoryEffectOpInterface)

Effects: MemoryEffects::Effect{}

Operands:​

OperandDescription
paramany type

Results:​

ResultDescription
resany type

tuples.getcol (::lingodb::compiler::dialect::tuples::GetColumnOp)​

Get column operation

Syntax:

operation ::= `tuples.getcol` $tuple custom<CustRef>($attr) `:` type($res) attr-dict

Traits: AlwaysSpeculatableImplTrait

Interfaces: ConditionallySpeculatable, NoMemoryEffect (MemoryEffectOpInterface)

Effects: MemoryEffects::Effect{}

Attributes:​

AttributeMLIR TypeDescription
attr::lingodb::compiler::dialect::tuples::ColumnRefAttr

Operands:​

OperandDescription
tupletuple type

Results:​

ResultDescription
resany type

tuples.return (::lingodb::compiler::dialect::tuples::ReturnOp)​

Loop yield and termination operation

Syntax:

operation ::= `tuples.return` attr-dict ($results^ `:` type($results))?

Traits: AlwaysSpeculatableImplTrait, ReturnLike, Terminator

Interfaces: ConditionallySpeculatable, NoMemoryEffect (MemoryEffectOpInterface), RegionBranchTerminatorOpInterface

Effects: MemoryEffects::Effect{}

Operands:​

OperandDescription
resultsvariadic of any type

Attributes​

ColumnDefAttr​

Parameters:​

ParameterC++ typeDescription
namemlir::SymbolRefAttr
columnPtrstd::shared_ptr<Column>
fromExistingmlir::Attribute

ColumnRefAttr​

Parameters:​

ParameterC++ typeDescription
namemlir::SymbolRefAttr
columnPtrstd::shared_ptr<Column>

Types​

TupleStreamType​

tuple stream type

Syntax: !tuples.tuplestream

TupleType​

tuple type

Syntax: !tuples.tuple