RbProc
Swift
public struct RbProc: RbObjectConvertible
A Ruby Proc.
Use this to create a Ruby Proc from a symbol or any Ruby object
supporting to_proc
.
This is most useful when passing a block to a method:
// Ruby: mapped = names.map(&:downcase)
let mapped = names.call("map", block: RbProc(RbSymbol("downcase")))
Use RbObject.init(blockCall:)
to create a Ruby Proc from a
Swift closure.
If you want to pass Swift code to a method as a block then just call
RbObjectAccess.call(_:args:kwArgs:blockRetention:blockCall:)
directly,
no need for either RbProc
or RbObject
.
Topics
init(object: any RbObjectConvertible)
init(object: any RbObjectConvertible)
Initialize from something that can be turned into a Ruby object.
Declaration
Swift
public init(object: any RbObjectConvertible)
init?(RbObject)
init?(RbObject)
Try to initialize from a Ruby object.
Succeeds if the object can be used as a Proc (has to_proc
).
Declaration
Swift
public init?(_ value: RbObject)
var rubyObject: RbObject
var rubyObject: RbObject