diff --git a/lib/puppet_x/puppetlabs/strings/yard/handlers/defined_type_handler.rb b/lib/puppet_x/puppetlabs/strings/yard/handlers/defined_type_handler.rb
index 6e0a51a..78bff28 100644
--- a/lib/puppet_x/puppetlabs/strings/yard/handlers/defined_type_handler.rb
+++ b/lib/puppet_x/puppetlabs/strings/yard/handlers/defined_type_handler.rb
@@ -8,6 +8,23 @@ class PuppetX::PuppetLabs::Strings::YARD::Handlers::DefinedTypeHandler < PuppetX
param_tuple << ( a[1].nil? ? nil : a[1].source )
end
end
+ tp = Puppet::Pops::Types::TypeParser.new
+ param_type_info = {}
+ statement.pops_obj.parameters.each do |pop_param|
+ # If the parameter's type expression is nil, default to Any
+ if pop_param.type_expr == nil
+ param_type_info[pop_param.name] = Puppet::Pops::Types::TypeFactory.any()
+ else
+ begin
+ param_type_info[pop_param.name] = tp.interpret_any(pop_param.type_expr)
+ rescue Puppet::ParseError => e
+ # If the type could not be interpreted insert a prominent warning
+ param_type_info[pop_param.name] = "Type Error: #{e.message}"
+ end
+ end
+ end
+ obj.type_info = [param_type_info]
+
register obj
end
diff --git a/lib/puppet_x/puppetlabs/strings/yard/templates/default/html_helper.rb b/lib/puppet_x/puppetlabs/strings/yard/templates/default/html_helper.rb
index 2185450..3ff0804 100644
--- a/lib/puppet_x/puppetlabs/strings/yard/templates/default/html_helper.rb
+++ b/lib/puppet_x/puppetlabs/strings/yard/templates/default/html_helper.rb
@@ -60,7 +60,7 @@ class HTMLHelper
end
# Give up. It can probably be anything.
elsif !param[:puppet_3_func]
- result << "(Unkown)"
+ result << "(Unknown)"
end
result << ""