diff --git a/src/ConstructionBase.jl b/src/ConstructionBase.jl index 4c4871a..4f66e87 100644 --- a/src/ConstructionBase.jl +++ b/src/ConstructionBase.jl @@ -26,10 +26,7 @@ for (name, path) in [ end end -@generated function constructorof(::Type{T}) where T - getfield(parentmodule(T), nameof(T)) -end - +constructorof(T::Type) = Base.typename(T).wrapper constructorof(::Type{<:Tuple}) = tuple constructorof(::Type{<:NamedTuple{names}}) where names = NamedTupleConstructor{names}()