Slide 24
Slide 24 text
struct Greeter {
greeting: String
}
declare_types! {
pub class JsGreeter for Greeter {
init(greeting: String) {
Ok(Greeter { greeting: greeting })
}
method hello(call: Call) {
let scope = call.scope;
let name = call.arguments.require(scope, 0)?.check::()?;
let message = call.arguments.this(scope).grab(|greeter| {
format!("{}, {}!", greeter.greeting, name)
});
Ok(JsString::new(scope, message).unwrap())
}
}
}