Models what is known by the router about a single argument: that it has
a name, a human-readable typeString describing what the type is
(just for logging and reading, not a replacement for a TypeTag
) and
possible a function that can compute its default value
What is known about a single endpoint for our routes.
What is known about a single endpoint for our routes. It has a name, argSignatures for each argument, and a macro-generated invoke0 that performs all the necessary argument parsing and de-serialization.
Realistically, you will probably spend most of your time calling invoke instead, which provides a nicer API to call it that mimmicks the API of calling a Scala method.
Represents what comes out of an attempt to invoke an EntryPoint.
Represents what comes out of an attempt to invoke an EntryPoint. Could succeed with a value, but could fail in many different ways.
More or less a minimal version of Autowire's Server that lets you generate a set of "routes" from the methods defined in an object, and call them using passing in name/args/kwargs via Java reflection, without having to generate/compile code or use Scala reflection. This saves us spinning up the Scala compiler and greatly reduces the startup time of cached scripts.