pub struct LuaActor {
pub recipients: HashMap<String, Recipient<LuaMessage>>,
/* private fields */
}
Expand description
Top level struct which holds a lua state for itself.
It provides most of the actix context API to the lua enviroment.
You can create new LuaActor
with LuaActorBuilder
.
ctx.msg
The message sent to Lua actor.
ctx.notify(msg)
Send message msg
to self.
ctx.notify_later(msg, seconds)
Send message msg
to self after specified period of time.
local recipient = ctx.new_actor(script_path, [actor_name])
Create a new actor with given lua script. returns a recipient which can be used in ctx.send
and ctx.do_send
.
local result = ctx.send(recipient, msg)
Send message msg
to `recipient asynchronously and wait for response.
Equivalent to actix::Recipient.send
.
ctx.do_send(recipient, msg)
Send message msg
to recipient
.
Equivalent to actix::Recipient.do_send
.
ctx.terminate()
Terminate actor execution.
Fields
recipients: HashMap<String, Recipient<LuaMessage>>
Implementations
sourceimpl LuaActor
impl LuaActor
pub fn new_with_vm(
vm: Lua,
started: Option<String>,
handle: Option<String>,
stopped: Option<String>
) -> Result<LuaActor, LuaError>
pub fn new(
started: Option<String>,
handle: Option<String>,
stopped: Option<String>
) -> Result<LuaActor, LuaError>
sourcepub fn add_recipients(
&mut self,
name: &str,
rec: Recipient<LuaMessage>
) -> Option<Recipient<LuaMessage>>
pub fn add_recipients(
&mut self,
name: &str,
rec: Recipient<LuaMessage>
) -> Option<Recipient<LuaMessage>>
Add a recipient to the actor’s recipient list.
You can send message to the recipient via name
with the context API ctx.send(name, message)
Trait Implementations
sourceimpl Actor for LuaActor
impl Actor for LuaActor
sourcefn started(&mut self, ctx: &mut Context<Self>)
fn started(&mut self, ctx: &mut Context<Self>)
Method is called when actor get polled first time.
sourcefn stopped(&mut self, ctx: &mut Context<Self>)
fn stopped(&mut self, ctx: &mut Context<Self>)
Method is called after an actor is stopped, it can be used to perform
any needed cleanup work or spawning more actors. This is final state,
after this call actor get dropped. Read more
sourcefn stopping(&mut self, ctx: &mut Self::Context) -> Running
fn stopping(&mut self, ctx: &mut Self::Context) -> Running
Method is called after an actor is in
Actor::Stopping
state. There
could be several reasons for stopping. Context::stop
get called
by the actor itself. All addresses to current actor get dropped and
no more evented objects left in the context. Read moresourceimpl Handler<LuaMessage> for LuaActor
impl Handler<LuaMessage> for LuaActor
type Result = LuaMessage
type Result = LuaMessage
The type of value that this handle will return
sourcefn handle(&mut self, msg: LuaMessage, ctx: &mut Context<Self>) -> Self::Result
fn handle(&mut self, msg: LuaMessage, ctx: &mut Context<Self>) -> Self::Result
Method is called for every message received by this Actor
Auto Trait Implementations
impl !RefUnwindSafe for LuaActor
impl Send for LuaActor
impl !Sync for LuaActor
impl Unpin for LuaActor
impl !UnwindSafe for LuaActor
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more