Add ToLua implementation for Cow<str> and Cow<CStr>
This commit is contained in:
parent
7332c6a28c
commit
1d9cda10eb
|
@ -1,3 +1,4 @@
|
||||||
|
use std::borrow::Cow;
|
||||||
use std::collections::{BTreeMap, BTreeSet, HashMap, HashSet};
|
use std::collections::{BTreeMap, BTreeSet, HashMap, HashSet};
|
||||||
use std::ffi::{CStr, CString};
|
use std::ffi::{CStr, CString};
|
||||||
use std::hash::{BuildHasher, Hash};
|
use std::hash::{BuildHasher, Hash};
|
||||||
|
@ -222,6 +223,12 @@ impl<'lua> ToLua<'lua> for &str {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl<'lua> ToLua<'lua> for Cow<'_, str> {
|
||||||
|
fn to_lua(self, lua: &'lua Lua) -> Result<Value<'lua>> {
|
||||||
|
Ok(Value::String(lua.create_string(self.as_bytes())?))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl<'lua> ToLua<'lua> for CString {
|
impl<'lua> ToLua<'lua> for CString {
|
||||||
fn to_lua(self, lua: &'lua Lua) -> Result<Value<'lua>> {
|
fn to_lua(self, lua: &'lua Lua) -> Result<Value<'lua>> {
|
||||||
Ok(Value::String(lua.create_string(self.as_bytes())?))
|
Ok(Value::String(lua.create_string(self.as_bytes())?))
|
||||||
|
@ -256,6 +263,12 @@ impl<'lua> ToLua<'lua> for &CStr {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl<'lua> ToLua<'lua> for Cow<'_, CStr> {
|
||||||
|
fn to_lua(self, lua: &'lua Lua) -> Result<Value<'lua>> {
|
||||||
|
Ok(Value::String(lua.create_string(self.to_bytes())?))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl<'lua> ToLua<'lua> for BString {
|
impl<'lua> ToLua<'lua> for BString {
|
||||||
fn to_lua(self, lua: &'lua Lua) -> Result<Value<'lua>> {
|
fn to_lua(self, lua: &'lua Lua) -> Result<Value<'lua>> {
|
||||||
Ok(Value::String(lua.create_string(&self)?))
|
Ok(Value::String(lua.create_string(&self)?))
|
||||||
|
|
Loading…
Reference in a new issue