docs: function(rule){
      rule = basis.getter(rule || $true);
  
      if (this.rule !== rule)
      {
        var oldRule = this.rule;
  
        this.rule = rule;
        this.emit_ruleChanged(oldRule);
  
        /** @cut */ basis.dev.patchInfo(this, 'sourceInfo', {
        /** @cut */   transform: this.rule
        /** @cut */ });
  
        return this.applyRule();
      }
    }