Class: Kumi::IR::Vec::Builder
Instance Attribute Summary
#current_block, #function, #ir_module
Instance Method Summary
collapse
-
#axis_broadcast(result:, value:, from_axes:, to_axes:, dtype:, metadata: {}) ⇒ Object
-
#axis_index(result:, axis:, axes:, dtype:, metadata: {}) ⇒ Object
-
#axis_shift(result:, source:, axis:, offset:, policy:, axes:, dtype:, metadata: {}) ⇒ Object
-
#constant(result:, value:, axes:, dtype:, metadata: {}) ⇒ Object
-
#load_field(result:, object:, field:, axes:, dtype:, metadata: {}) ⇒ Object
-
#load_input(result:, key:, axes:, dtype:, chain: [], metadata: {}) ⇒ Object
-
#map(result:, fn:, args:, axes:, dtype:, metadata: {}) ⇒ Object
-
#reduce(result:, fn:, arg:, axes:, over_axes:, dtype:, metadata: {}) ⇒ Object
-
#select(result:, cond:, on_true:, on_false:, axes:, dtype:, metadata: {}) ⇒ Object
#emit, #initialize, #new_block, #set_block
Instance Method Details
#axis_broadcast(result:, value:, from_axes:, to_axes:, dtype:, metadata: {}) ⇒ Object
41
42
43
|
# File 'lib/kumi/ir/vec.rb', line 41
def axis_broadcast(result:, value:, from_axes:, to_axes:, dtype:, metadata: {})
append Ops::AxisBroadcast.new(result:, value:, from_axes:, to_axes:, dtype:, metadata:)
end
|
#axis_index(result:, axis:, axes:, dtype:, metadata: {}) ⇒ Object
49
50
51
|
# File 'lib/kumi/ir/vec.rb', line 49
def axis_index(result:, axis:, axes:, dtype:, metadata: {})
append Ops::AxisIndex.new(result:, axis:, axes:, dtype:, metadata:)
end
|
#axis_shift(result:, source:, axis:, offset:, policy:, axes:, dtype:, metadata: {}) ⇒ Object
45
46
47
|
# File 'lib/kumi/ir/vec.rb', line 45
def axis_shift(result:, source:, axis:, offset:, policy:, axes:, dtype:, metadata: {})
append Ops::AxisShift.new(result:, source:, axis:, offset:, policy:, axes:, dtype:, metadata:)
end
|
#constant(result:, value:, axes:, dtype:, metadata: {}) ⇒ Object
21
22
23
|
# File 'lib/kumi/ir/vec.rb', line 21
def constant(result:, value:, axes:, dtype:, metadata: {})
append Ops::Constant.new(result:, value:, axes:, dtype:, metadata:)
end
|
#load_field(result:, object:, field:, axes:, dtype:, metadata: {}) ⇒ Object
29
30
31
|
# File 'lib/kumi/ir/vec.rb', line 29
def load_field(result:, object:, field:, axes:, dtype:, metadata: {})
append Ops::LoadField.new(result:, object:, field:, axes:, dtype:, metadata:)
end
|
25
26
27
|
# File 'lib/kumi/ir/vec.rb', line 25
def load_input(result:, key:, axes:, dtype:, chain: [], metadata: {})
append Ops::LoadInput.new(result:, key:, axes:, dtype:, chain:, metadata:)
end
|
#map(result:, fn:, args:, axes:, dtype:, metadata: {}) ⇒ Object
33
34
35
|
# File 'lib/kumi/ir/vec.rb', line 33
def map(result:, fn:, args:, axes:, dtype:, metadata: {})
append Ops::Map.new(result:, fn:, args:, axes:, dtype:, metadata:)
end
|
#reduce(result:, fn:, arg:, axes:, over_axes:, dtype:, metadata: {}) ⇒ Object
53
54
55
|
# File 'lib/kumi/ir/vec.rb', line 53
def reduce(result:, fn:, arg:, axes:, over_axes:, dtype:, metadata: {})
append Ops::Reduce.new(result:, fn:, arg:, axes:, over_axes:, dtype:, metadata:)
end
|
#select(result:, cond:, on_true:, on_false:, axes:, dtype:, metadata: {}) ⇒ Object
37
38
39
|
# File 'lib/kumi/ir/vec.rb', line 37
def select(result:, cond:, on_true:, on_false:, axes:, dtype:, metadata: {})
append Ops::Select.new(result:, cond:, on_true:, on_false:, axes:, dtype:, metadata:)
end
|