Class: Rjq::BytecodeFilter
Instance Attribute Summary
Attributes inherited from AST::Node
#source_span
Instance Method Summary
collapse
Methods inherited from AST::Node
#assign_value, #invalid_path_message, #with_source_span
Constructor Details
#initialize(vm, block, captured_context: nil) ⇒ BytecodeFilter
Returns a new instance of BytecodeFilter.
1325
1326
1327
1328
1329
|
# File 'lib/rjq/vm.rb', line 1325
def initialize(vm, block, captured_context: nil)
@vm = vm
@block = block
@captured_context = captured_context
end
|
Instance Method Details
#eval(input, context) ⇒ Object
1331
1332
1333
|
# File 'lib/rjq/vm.rb', line 1331
def eval(input, context)
@vm.execute_block(@block.instructions, input, @captured_context || context)
end
|
#paths(input, context) ⇒ Object
1343
1344
1345
|
# File 'lib/rjq/vm.rb', line 1343
def paths(input, context)
@vm.paths_for_block(@block.instructions, input, @captured_context || context)
end
|
#replacement_filters ⇒ Object
1355
1356
1357
|
# File 'lib/rjq/vm.rb', line 1355
def replacement_filters
@vm.replacement_filters(@block, @captured_context)
end
|
#source_all?(input, context) ⇒ Boolean
1351
1352
1353
|
# File 'lib/rjq/vm.rb', line 1351
def source_all?(input, context, &)
@vm.source_all?(@block.instructions, input, @captured_context || context, &)
end
|
#source_any?(input, context) ⇒ Boolean
1347
1348
1349
|
# File 'lib/rjq/vm.rb', line 1347
def source_any?(input, context, &)
@vm.source_any?(@block.instructions, input, @captured_context || context, &)
end
|
#stream(input, context) ⇒ Object
1335
1336
1337
|
# File 'lib/rjq/vm.rb', line 1335
def stream(input, context)
@vm.stream_block(@block, input, @captured_context || context)
end
|
#take(input, context, count) ⇒ Object
1339
1340
1341
|
# File 'lib/rjq/vm.rb', line 1339
def take(input, context, count)
@vm.take_block(@block.instructions, input, @captured_context || context, count)
end
|