original_string: public static function instance($prototype = null)
      {
          static $instance;
          if ($prototype !== null) {
              $instance = $prototype;
          } elseif ($instance === null || $prototype === true) {
              $instance = new HTMLPurifier_DefinitionCacheFactory();
              $instance->setup();
          }
          return $instance;
      }
code: public static function instance($prototype = null)
      {
          static $instance;
          if ($prototype !== null) {
              $instance = $prototype;
          } elseif ($instance === null || $prototype === true) {
              $instance = new HTMLPurifier_DefinitionCacheFactory();
              $instance->setup();
          }
          return $instance;
      }
code_tokens: public static function instance ( $ prototype = null ) { static $ instance ; if ( $ prototype !== null ) { $ instance = $ prototype ; } elseif ( $ instance === null || $ prototype === true ) { $ instance = new HTMLPurifier_DefinitionCacheFactory ( ) ; $ instance -> setup ( ) ; } return $ instance ; }
docstring: Retrieves an instance of global definition cache factory.
  @param HTMLPurifier_DefinitionCacheFactory $prototype
  @return HTMLPurifier_DefinitionCacheFactory
docstring_tokens: Retrieves an instance of global definition cache factory .