Immutable List
Warning
This page is under construction. The content may be incomplete or incorrect. Submit an issue on GitHub if you need help or want to contribute.
CarryT module-attribute
CarryT = TypeVar('CarryT')
ElemT module-attribute
ElemT = TypeVar('ElemT')
IListType module-attribute
IListType = Generic(IList, ElemT, ListLen)
ListLen module-attribute
ListLen = TypeVar('ListLen')
OutElemT module-attribute
OutElemT = TypeVar('OutElemT')
ResultT module-attribute
ResultT = TypeVar('ResultT')
Foldl krin-statement
Foldl(
fn: ir.SSAValue,
collection: ir.SSAValue,
init: ir.SSAValue,
)
Bases: Statement
collection kirin-argument
collection: SSAValue = argument(IListType[ElemT])
fn kirin-argument
fn: SSAValue = argument(
Generic(Method, [OutElemT, ElemT], OutElemT)
)
init kirin-argument
init: SSAValue = argument(OutElemT)
result kirin-result
result: ResultValue = result(OutElemT)
traits class-attribute
instance-attribute
traits = frozenset({FromPythonCall()})
Foldr krin-statement
Foldr(
fn: ir.SSAValue,
collection: ir.SSAValue,
init: ir.SSAValue,
)
Bases: Statement
collection kirin-argument
collection: SSAValue = argument(IListType[ElemT])
fn kirin-argument
fn: SSAValue = argument(
Generic(Method, [ElemT, OutElemT], OutElemT)
)
init kirin-argument
init: SSAValue = argument(OutElemT)
result kirin-result
result: ResultValue = result(OutElemT)
traits class-attribute
instance-attribute
traits = frozenset({FromPythonCall()})
ForEach krin-statement
ForEach(fn: ir.SSAValue, collection: ir.SSAValue)
Bases: Statement
collection kirin-argument
collection: SSAValue = argument(IListType[ElemT])
fn kirin-argument
fn: SSAValue = argument(Generic(Method, [ElemT], NoneType))
traits class-attribute
instance-attribute
traits = frozenset({FromPythonCall()})
Map krin-statement
Map(fn: ir.SSAValue, collection: ir.SSAValue)
Bases: Statement
collection kirin-argument
collection: SSAValue = argument(IListType[ElemT, ListLen])
fn kirin-argument
fn: SSAValue = argument(Generic(Method, [ElemT], OutElemT))
result kirin-result
result: ResultValue = result(IListType[OutElemT, ListLen])
traits class-attribute
instance-attribute
traits = frozenset({FromPythonCall()})
New krin-statement
New(values: Sequence[ir.SSAValue])
Bases: Statement
Source code in src/kirin/dialects/ilist/stmts.py
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
|
result kirin-result
result: ResultValue = result(IListType[ElemT])
traits class-attribute
instance-attribute
traits = frozenset({Pure(), FromPythonCall()})
values kirin-argument
values: tuple[SSAValue, ...] = argument(ElemT)
Push krin-statement
Push(lst: ir.SSAValue, value: ir.SSAValue)
Bases: Statement
lst kirin-argument
lst: SSAValue = argument(IListType[ElemT])
result kirin-result
result: ResultValue = result(IListType[ElemT])
traits class-attribute
instance-attribute
traits = frozenset({FromPythonCall()})
value kirin-argument
value: SSAValue = argument(IListType[ElemT])
Scan krin-statement
Scan(
fn: ir.SSAValue,
collection: ir.SSAValue,
init: ir.SSAValue,
)
Bases: Statement
collection kirin-argument
collection: SSAValue = argument(IListType[ElemT, ListLen])
fn kirin-argument
fn: SSAValue = argument(
Generic(
Method, [OutElemT, ElemT], Tuple[OutElemT, ResultT]
)
)
init kirin-argument
init: SSAValue = argument(OutElemT)
result kirin-result
result: ResultValue = result(
Tuple[OutElemT, IListType[ResultT, ListLen]]
)
traits class-attribute
instance-attribute
traits = frozenset({FromPythonCall()})