- Review PDD 19 PIR for namespaces behavior
- Review PDD 21 Namespaces
NameSpace PMC
- NameSpace has too many named-storage responsibilities: subs/methods by name, nested namespaces by name, and global variables by name. These responsibilities should be broken up and accessed through separate interfaces.
- Remove FPA_is_ns_ext flag nonsense
- Stop using get/set_pointer_*.
- NameSpace should cache it's own fully-qualified name in a standard format (RSA, FSA, etc)
- Decouple NameSpace and Class. One should not imply or require the existence of the other
- Stop marshaling Sub/methods from NameSpace to Class. Or, find a much less expensive way to do it. For instance, if we have a specialized "sub cache" object, we can simply move that sub cache from the NameSpace to the Class.
- get_namespace_pmc should be renamed to indicate that it operates on subs. It should probably not poke directly into the sub guts
- del_* methods should be renamed to "delete_", for clarity
src/namespace.c
Download in other formats: