Enum ezno_checker::context::environment::FunctionScope
source · pub enum FunctionScope {
ArrowFunction {
free_this_type: TypeId,
is_async: bool,
expected_return: Option<ExpectedReturnType>,
},
MethodFunction {
free_this_type: TypeId,
is_async: bool,
is_generator: bool,
expected_return: Option<ExpectedReturnType>,
},
Function {
is_generator: bool,
is_async: bool,
expected_return: Option<ExpectedReturnType>,
this_type: TypeId,
type_of_super: TypeId,
location: ContextLocation,
},
Constructor {
extends: bool,
type_of_super: Option<TypeId>,
this_object_type: TypeId,
},
}
Expand description
TODO better names
Decides whether await
and yield
are available and many others
this
is the dependent type
Variants§
ArrowFunction
MethodFunction
TODO does this need to gdistinguish class
Fields
§
expected_return: Option<ExpectedReturnType>
Function
Constructor
Trait Implementations§
source§impl Clone for FunctionScope
impl Clone for FunctionScope
source§fn clone(&self) -> FunctionScope
fn clone(&self) -> FunctionScope
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 moreAuto Trait Implementations§
impl Freeze for FunctionScope
impl RefUnwindSafe for FunctionScope
impl Send for FunctionScope
impl Sync for FunctionScope
impl Unpin for FunctionScope
impl UnwindSafe for FunctionScope
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more