AsChunk

Trait AsChunk 

pub trait AsChunk {
    // Required method
    fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>
       where Self: 'a;

    // Provided methods
    fn name(&self) -> Option<String> { ... }
    fn environment(&self, lua: &Lua) -> Result<Option<Table>, Error> { ... }
    fn mode(&self) -> Option<ChunkMode> { ... }
}
Expand description

Trait for types loadable by Lua and convertible to a Chunk

Required Methods§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>
where Self: 'a,

Returns chunk data (can be text or binary)

Provided Methods§

fn name(&self) -> Option<String>

Returns optional chunk name

See Chunk::set_name for possible name prefixes.

fn environment(&self, lua: &Lua) -> Result<Option<Table>, Error>

Returns optional chunk environment

fn mode(&self) -> Option<ChunkMode>

Returns optional chunk mode (text or binary)

Implementations on Foreign Types§

§

impl AsChunk for &str

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>
where &str: 'a,

§

impl AsChunk for &String

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>
where &String: 'a,

§

impl AsChunk for &Vec<u8>

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>
where &Vec<u8>: 'a,

§

impl AsChunk for &Path

§

fn name(&self) -> Option<String>

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>

§

impl AsChunk for &[u8]

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>
where &[u8]: 'a,

§

impl AsChunk for String

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>

§

impl AsChunk for Vec<u8>

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>

§

impl AsChunk for PathBuf

§

fn name(&self) -> Option<String>

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>

§

impl<C> AsChunk for Box<C>
where C: AsChunk + ?Sized,

§

fn name(&self) -> Option<String>

§

fn environment(&self, lua: &Lua) -> Result<Option<Table>, Error>

§

fn mode(&self) -> Option<ChunkMode>

§

fn source<'a>(&self) -> Result<Cow<'a, [u8]>, Error>
where Box<C>: 'a,

Implementors§