A factory that routes to the local binding of the passed-in Path.
A class eligible for configuring how paths will be displayed in metrics metadata
Interpret names against a Dtab.
Indicates an error in Namer lookup
Interpret names against the Dtab, using the default evaluation strategy.
Interpret names against the Dtab, using the default evaluation
strategy. Recursively look up and rewrite paths according to entries
matching the path prefix in the Dtab. If a path does not match any
Dtab entry prefix, the global Namer is invoked to resolve it. This is
how paths starting with /$/ are bound.
A NameInterpreter that delegates to a service-loaded NameInterpreter.
A NameInterpreter that delegates to a service-loaded NameInterpreter.
The existence of multiple service-loaded NameInterpreters is an illegal state. If no service-loaded NameInterpreters are found, use the DefaultInterpreter.
A factory that routes to the local binding of the passed-in Path. It calls
newFactoryto mint a new ServiceFactory for novel name evaluations.A three-level caching scheme is employed for efficiency:
First, the ServiceFactory for a Path is cached by the local Dtab. This permits sharing in the common case that no local Dtab is given. (It also papers over the mutability of Dtab.base.)
Second, the ServiceFactory for a Path (relative to a Dtab) is cached by the NameTree it is bound to by that Dtab. Binding a path results in an Activity, so this cache permits sharing when the same tree is returned in different updates of the Activity. (In particular it papers over nuisance updates of the Activity where the value is unchanged.)
Third, the ServiceFactory for a Name.Bound appearing in a NameTree is cached by its Name.Bound. This permits sharing when the same Name.Bound appears in different NameTrees (or the same NameTree resulting from different bindings of the Path).