Class: Wardite::ExternalFunction
- Inherits:
-
Object
- Object
- Wardite::ExternalFunction
- Defined in:
- lib/wardite.rb
Overview
@rbs!
type wasmFuncReturn = Object|nil
Instance Attribute Summary collapse
-
#callsig ⇒ Object
: Array.
-
#name ⇒ Object
: Symbol.
-
#retsig ⇒ Object
: Array.
-
#target_module ⇒ Object
: wasmModule.
Instance Method Summary collapse
- #callable ⇒ Object
- #clone(override_type: nil) ⇒ Object
-
#initialize(target_module, name, callsig, retsig) ⇒ ExternalFunction
constructor
A new instance of ExternalFunction.
Constructor Details
#initialize(target_module, name, callsig, retsig) ⇒ ExternalFunction
Returns a new instance of ExternalFunction.
1336 1337 1338 1339 1340 1341 |
# File 'lib/wardite.rb', line 1336 def initialize(target_module, name, callsig, retsig) @target_module = target_module @name = name @callsig = callsig @retsig = retsig end |
Instance Attribute Details
#callsig ⇒ Object
: Array
1326 1327 1328 |
# File 'lib/wardite.rb', line 1326 def callsig @callsig end |
#name ⇒ Object
: Symbol
1324 1325 1326 |
# File 'lib/wardite.rb', line 1324 def name @name end |
#target_module ⇒ Object
: wasmModule
1322 1323 1324 |
# File 'lib/wardite.rb', line 1322 def target_module @target_module end |
Instance Method Details
#callable ⇒ Object
1344 1345 1346 |
# File 'lib/wardite.rb', line 1344 def callable() target_module.callable(self.name) end |
#clone(override_type: nil) ⇒ Object
1350 1351 1352 1353 1354 1355 1356 1357 |
# File 'lib/wardite.rb', line 1350 def clone(override_type: nil) if override_type # callable is assumed to be frozen, so we can copy its ref ExternalFunction.new(target_module, name, override_type.callsig, override_type.retsig) else ExternalFunction.new(target_module, name, callsig, retsig) end end |