Modules | Files | Inheritance Tree | Inheritance Graph | Name Index | Config
module Synopsis::Linker::EmptyNS
class EmptyNS
Files: Synopsis/Linker/EmptyNS.py
EmptyNS-inheritance

A class that removes empty namespaces


Operations Summary:
 __init__(self)
Overrides the default processAll() to setup the stack [Source]
 execute(self, ast) [Source]
 push(self)
Pushes the current scope onto the stack and starts a new one [Source]
 pop(self, decl)
Pops the current scope from the stack, and appends the given declaration to it [Source]
 pop_only(self)
Only pops, doesn't append to scope [Source]
 add(self, decl)
Adds the given decl to the current scope [Source]
 currscope(self)
Returns the current scope: a list of declarations [Source]
 visitDeclaration(self, decl)
Adds declaration to scope [Source]
 visitGroup(self, group)
Overrides recursive behaviour to just add the group [Source]
 visitEnum(self, enum)
Overrides recursive behaviour to just add the enum [Source]
 visitModule(self, module)
Visits all children of the module, and if there are no declarations after that removes the module [Source]
 _count_not_forwards(self, decls)
Returns the number of declarations not instances of AST.Forward [Source]