# Functions
DefNameIsAllowed returns an error if the definition name is not allowed.
FormatDefName is the function used to turn the definition name into something that can be used as a method name for the generated container.
FormatPkgName formats a package name by keeping only the letters.
NewRegisteredType is the RegisteredType constructor.
WriteTemplate executes the given templates with the given data.
# Structs
ParamInfo contains the parsed information about a parameter.
ParamScanner helps the Scanner.
RegisteredType is the representation of a type.
Scan contains the parsed information about the service definitions.
ScannedDef contains the parsed information about a service definition.
Scanner analyzes the definitions provided by a Provider.
TypeManager maintains a list of all the import paths that are used in the types that it has registered.
# Interfaces
Provider is an interface that contains the public methods of the generated Provider.