Struct tealr::ExportedFunction
source · pub struct ExportedFunction {
pub name: NameContainer,
pub signature: Cow<'static, [NamePart]>,
pub params: Vec<FunctionParam>,
pub returns: Vec<Type>,
pub is_meta_method: bool,
}
Expand description
Contains the data needed to write down the type of a function
Fields§
§name: NameContainer
Name of the function
signature: Cow<'static, [NamePart]>
👎Deprecated
The full layout of the function based on teal’s syntax
params: Vec<FunctionParam>
The parameters that this function requires
returns: Vec<Type>
The return type of the function
is_meta_method: bool
If this function is a meta_method
Implementations§
source§impl ExportedFunction
impl ExportedFunction
sourcepub fn new<A: TealMultiValue, R: TealMultiValue, S: AsRef<str>>(
name: S,
is_meta_method: bool,
extra_self: Option<Type>
) -> Self
pub fn new<A: TealMultiValue, R: TealMultiValue, S: AsRef<str>>( name: S, is_meta_method: bool, extra_self: Option<Type> ) -> Self
Creates an ExportedFunction with the given name, Parameters and return value
ExportedFunction::new::<(String,String),String,_>("concat",false,None);
sourcepub fn get_generics(&self) -> HashSet<&Name>
pub fn get_generics(&self) -> HashSet<&Name>
Get all the generics that this function uses.
Trait Implementations§
source§impl Clone for ExportedFunction
impl Clone for ExportedFunction
source§fn clone(&self) -> ExportedFunction
fn clone(&self) -> ExportedFunction
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for ExportedFunction
impl Debug for ExportedFunction
source§impl<'de> Deserialize<'de> for ExportedFunction
impl<'de> Deserialize<'de> for ExportedFunction
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl RefUnwindSafe for ExportedFunction
impl Send for ExportedFunction
impl Sync for ExportedFunction
impl Unpin for ExportedFunction
impl UnwindSafe for ExportedFunction
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more