Class: Sigma::TransactionHintsBag

Inherits:
Object
  • Object
show all
Extended by:
FFI::Library
Defined in:
lib/sigma/transaction.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#pointerObject

Returns the value of attribute pointer.



192
193
194
# File 'lib/sigma/transaction.rb', line 192

def pointer
  @pointer
end

Class Method Details

.createObject



194
195
196
197
198
# File 'lib/sigma/transaction.rb', line 194

def self.create
  pointer = FFI::MemoryPointer.new(:pointer)
  ergo_lib_transaction_hints_bag_empty(pointer)
  init(pointer)
end

.extract_hints_from_signed_transaction(transaction:, state_context:, boxes_to_spend:, data_boxes:, real_propositions:, simulated_propositions:) ⇒ Object



204
205
206
207
208
209
# File 'lib/sigma/transaction.rb', line 204

def self.extract_hints_from_signed_transaction(transaction:, state_context:, boxes_to_spend:, data_boxes:, real_propositions:, simulated_propositions:)
  pointer = FFI::MemoryPointer.new(:pointer)
  error = ergo_lib_transaction_extract_hints(transaction.pointer, state_context.pointer, boxes_to_spend.pointer, data_boxes.pointer, real_propositions.pointer, simulated_propositions.pointer, pointer)
  Util.check_error!(error)
  init(pointer)
end

.with_raw_pointer(pointer) ⇒ Object



200
201
202
# File 'lib/sigma/transaction.rb', line 200

def self.with_raw_pointer(pointer)
  init(pointer)
end

Instance Method Details

#add_hints_for_input(index:, hints_bag:) ⇒ Object



211
212
213
# File 'lib/sigma/transaction.rb', line 211

def add_hints_for_input(index:, hints_bag:)
  ergo_lib_transaction_hints_bag_add_hints_for_input(self.pointer, index, hints_bag.pointer)
end

#all_hints_for_input(index) ⇒ Object



215
216
217
218
219
# File 'lib/sigma/transaction.rb', line 215

def all_hints_for_input(index)
  pointer = FFI::MemoryPointer.new(:pointer)
  ergo_lib_transaction_hints_bag_all_hints_for_input(self.pointer, index, pointer)
  Sigma::HintsBag.with_raw_pointer(pointer)
end