Adds a NamingContext object as a descendant - where its contained objects will have names prefixed with the name given to the reference object, if the reference object is named in the scope of this context.
Suggest a name (that will be propagated to FIRRTL) for an object, then returns the object itself (so this can be inserted transparently anywhere).
Suggest a name (that will be propagated to FIRRTL) for an object, then returns the object itself (so this can be inserted transparently anywhere). Is a no-op (so safe) when applied on objects that aren't named, including non-Chisel data types.
Gives this context a naming prefix (which may be empty, "", for a top-level Module context) so that actual naming calls (HasId.suggestName) can happen.
Gives this context a naming prefix (which may be empty, "", for a top-level Module context) so that actual naming calls (HasId.suggestName) can happen. Recursively names descendants, for those whose return value have an associated name.
Base class for naming contexts, providing the basic API consisting of naming calls and ability to take descendant naming contexts.