diff --git a/src/protocol/ast.rs b/src/protocol/ast.rs index 2e5bdc8d168c3eba253195ba4b8075f3313e7a88..3768723cfe9b4a64bf1f1ab077d2d1e3ba2ad71d 100644 --- a/src/protocol/ast.rs +++ b/src/protocol/ast.rs @@ -480,7 +480,7 @@ impl<'a> Iterator for ParserTypeIter<'a> { /// ConcreteType is the representation of a type after the type inference and /// checker is finished. These are fully typed. -#[derive(Debug, Clone, Copy, Eq, PartialEq)] +#[derive(Debug, Clone, Copy, Eq, PartialEq, Hash)] pub enum ConcreteTypePart { // Special types (cannot be explicitly constructed by the programmer) Void, @@ -504,7 +504,7 @@ pub enum ConcreteTypePart { } impl ConcreteTypePart { - fn num_embedded(&self) -> u32 { + pub(crate) fn num_embedded(&self) -> u32 { use ConcreteTypePart::*; match self {