/**
  * Constructor
  *
  * @param string $str the file or string
  * @param bool $is_file whether $str is a file
  * @param PC_Engine_Env $env the environment
  */
 public function __construct($str, $is_file, $env)
 {
     parent::__construct($str, $is_file);
     if (!$env instanceof PC_Engine_Env) {
         FWS_Helper::def_error('instance', 'env', 'PC_Engine_Env', $env);
     }
     $this->env = $env;
 }
 /**
  * Constructor
  * 
  * @param string $str the file or string
  * @param bool $is_file whether $str is a file
  * @param PC_Engine_Env $env the environment
  */
 public function __construct($str, $is_file, $env)
 {
     parent::__construct($str, $is_file);
     if (!$env instanceof PC_Engine_Env) {
         FWS_Helper::def_error('instance', 'env', 'PC_Engine_Env', $env);
     }
     $this->env = $env;
     $this->scope = new PC_Engine_Scope();
     $this->vars = new PC_Engine_VarContainer();
     $this->methods_analyzer = new PC_Analyzer_Methods($env);
     $this->calls_analyzer = new PC_Analyzer_Calls($env);
     $this->classes_analyzer = new PC_Analyzer_Classes($env);
     $this->req_analyzer = new PC_Analyzer_Requirements($env);
     $this->ret_analyzer = new PC_Analyzer_Returns($env);
     $this->throws_analyzer = new PC_Analyzer_Throws($env);
     $this->modifiers_analyzer = new PC_Analyzer_Modifiers($env);
     $this->vars_analyzer = new PC_Analyzer_Vars($env);
 }