use crate::type_aliases::scope_ptr_constraint_generator::ScopePtr;
use crate::type_aliases::type_id::TypeId;
#[derive(Debug, Clone)]
pub struct FunctionSignature {
/// The type of the function.
pub signature: TypeId,
/// The scope that encompasses the function's signature. May be nullptr
/// if there was no need for a signature scope (the function has no
/// generics).
pub signature_scope: ScopePtr,
/// The scope that encompasses the function's body. Is a child scope of
/// signatureScope, if present.
pub body_scope: ScopePtr,
}