def __call__(self, that): # internal appspace manager that._M = Pathways.appspace( self.pattern, self.required, self.defaults, *self.args, **self.kw ) # lock internal appspace global settings that._M.settings.lock() # set internal appspace global settings that._G = that._M.settings.final return that
def __init__(self, pattern=None, required=None, defaults=None, **kw): ''' init @param pattern: pattern configuration or appspace label (default: None) @param required: required settings (default: None) @param defaults: default settings (default: None) ''' super(RootMixin, self).__init__() if pattern is not None: # external appspace self.M = Pathways.appspace(pattern, required, defaults) # freeze external appspace global settings self.M.freeze(kw) else: self.M = None self._setup()