Struct rutie::Proc [−][src]
pub struct Proc { /* fields omitted */ }
Expand description
Proc
(works with Lambda
as well)
Implementations
Calls a proc with given arguments
Examples
#[macro_use]
extern crate rutie;
use rutie::{Class, Object, Proc, RString};
class!(Greeter);
methods!(
Greeter,
rtself,
fn greet_rust_with(greeting_template: Proc) -> RString {
let name = RString::new_utf8("Rust").to_any_object();
let rendered_template = greeting_template.unwrap().call(&[name]);
rendered_template.try_convert_to::<RString>().unwrap()
}
);
fn main() {
Class::new("Greeter", None).define(|klass| {
klass.def_self("greet_rust_with", greet_rust_with);
});
}
Ruby:
class Greeter
def self.greet_rust_with(greeting_template)
greeting_template.call('Rust')
end
end
greeting_template = -> (name) { "Hello, #{name}!" }
Greeter.greet_rust_with(greeting_template) # => "Hello, Rust!"
Trait Implementations
Returns a singleton class of current object. Read more
Gets an immutable reference to the Rust structure which is wrapped into a Ruby object. Read more
Gets a mutable reference to the Rust structure which is wrapped into a Ruby object.
Defines an instance method for the given class or object. Read more
Defines a private instance method for the given class or object. Read more
Defines a class method for given class or singleton method for object. Read more
An alias for define_method
(similar to Ruby syntax def some_method
).
An alias for define_private_method
(similar to Ruby syntax private def some_method
).
An alias for define_singleton_method
(similar to Ruby def self.some_method
).
Calls a given method on an object similarly to Ruby Object#send
method Read more
Checks whether the object responds to given method Read more
fn protect_send(
&self,
method: &str,
arguments: &[AnyObject]
) -> Result<AnyObject, AnyException>
fn protect_send(
&self,
method: &str,
arguments: &[AnyObject]
) -> Result<AnyObject, AnyException>
protect_send
returns Result<AnyObject, AnyObject> Read more
fn protect_public_send(
&self,
method: &str,
arguments: &[AnyObject]
) -> Result<AnyObject, AnyException>
fn protect_public_send(
&self,
method: &str,
arguments: &[AnyObject]
) -> Result<AnyObject, AnyException>
protect_public_send
returns Result<AnyObject, AnyObject> Read more
Converts struct to AnyObject
Read more
Gets an instance variable of object Read more
Sets an instance variable for object Read more
Unsafely casts current object to the specified Ruby type Read more
Safely casts current object to the specified Ruby type Read more