};
#[derive(Debug)]
-pub enum SigKind {
+pub enum CallableKind {
Function,
- Struct,
- EnumVariant,
+ StructConstructor,
+ VariantConstructor,
}
/// Contains information about a function signature
#[derive(Debug)]
pub struct FunctionSignature {
- pub kind: SigKind,
+ pub kind: CallableKind,
/// Optional visibility
pub visibility: Option<String>,
/// Name of the function
Some(
FunctionSignature {
- kind: SigKind::Struct,
+ kind: CallableKind::StructConstructor,
visibility: node.visibility().map(|n| n.syntax().text().to_string()),
name: node.name().map(|n| n.text().to_string()),
ret_type: node.name().map(|n| n.text().to_string()),
Some(
FunctionSignature {
- kind: SigKind::EnumVariant,
+ kind: CallableKind::VariantConstructor,
visibility: None,
name: Some(name),
ret_type: None,
}
FunctionSignature {
- kind: SigKind::Function,
+ kind: CallableKind::Function,
visibility: node.visibility().map(|n| n.syntax().text().to_string()),
name: node.name().map(|n| n.text().to_string()),
ret_type: node
if let Some(name) = &self.name {
match self.kind {
- SigKind::Function => write!(f, "fn {}", name)?,
- SigKind::Struct => write!(f, "struct {}", name)?,
- SigKind::EnumVariant => write!(f, "{}", name)?,
+ CallableKind::Function => write!(f, "fn {}", name)?,
+ CallableKind::StructConstructor => write!(f, "struct {}", name)?,
+ CallableKind::VariantConstructor => write!(f, "{}", name)?,
}
}