original_string: public function path_end_reached($path) {
  
          // expand the MOD paths so that they contain the current module name
          if ($path === '/MOODLE_BACKUP/COURSE/MODULES/MOD') {
              $path = '/MOODLE_BACKUP/COURSE/MODULES/MOD/' . $this->currentmod;
  
          } else if (strpos($path, '/MOODLE_BACKUP/COURSE/MODULES/MOD') === 0) {
              $path = str_replace('/MOODLE_BACKUP/COURSE/MODULES/MOD', '/MOODLE_BACKUP/COURSE/MODULES/MOD/' . $this->currentmod, $path);
          }
  
          // expand the BLOCK paths so that they contain the module name
          if ($path === '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK') {
              $path = '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK/' . $this->currentblock;
  
          } else if (strpos($path, '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK') === 0) {
              $path = str_replace('/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK', '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK/' . $this->currentblock, $path);
          }
  
          if (empty($this->pathelements[$path])) {
              return;
          }
  
          $element = $this->pathelements[$path];
          $pobject = $element->get_processing_object();
          $method  = $element->get_end_method();
          $tags    = $element->get_tags();
  
          if (method_exists($pobject, $method)) {
              $pobject->$method($tags);
          }
      }
code: public function path_end_reached($path) {
  
          // expand the MOD paths so that they contain the current module name
          if ($path === '/MOODLE_BACKUP/COURSE/MODULES/MOD') {
              $path = '/MOODLE_BACKUP/COURSE/MODULES/MOD/' . $this->currentmod;
  
          } else if (strpos($path, '/MOODLE_BACKUP/COURSE/MODULES/MOD') === 0) {
              $path = str_replace('/MOODLE_BACKUP/COURSE/MODULES/MOD', '/MOODLE_BACKUP/COURSE/MODULES/MOD/' . $this->currentmod, $path);
          }
  
          // expand the BLOCK paths so that they contain the module name
          if ($path === '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK') {
              $path = '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK/' . $this->currentblock;
  
          } else if (strpos($path, '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK') === 0) {
              $path = str_replace('/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK', '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK/' . $this->currentblock, $path);
          }
  
          if (empty($this->pathelements[$path])) {
              return;
          }
  
          $element = $this->pathelements[$path];
          $pobject = $element->get_processing_object();
          $method  = $element->get_end_method();
          $tags    = $element->get_tags();
  
          if (method_exists($pobject, $method)) {
              $pobject->$method($tags);
          }
      }
code_tokens: public function path_end_reached ( $ path ) { // expand the MOD paths so that they contain the current module name if ( $ path === '/MOODLE_BACKUP/COURSE/MODULES/MOD' ) { $ path = '/MOODLE_BACKUP/COURSE/MODULES/MOD/' . $ this -> currentmod ; } else if ( strpos ( $ path , '/MOODLE_BACKUP/COURSE/MODULES/MOD' ) === 0 ) { $ path = str_replace ( '/MOODLE_BACKUP/COURSE/MODULES/MOD' , '/MOODLE_BACKUP/COURSE/MODULES/MOD/' . $ this -> currentmod , $ path ) ; } // expand the BLOCK paths so that they contain the module name if ( $ path === '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK' ) { $ path = '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK/' . $ this -> currentblock ; } else if ( strpos ( $ path , '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK' ) === 0 ) { $ path = str_replace ( '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK' , '/MOODLE_BACKUP/COURSE/BLOCKS/BLOCK/' . $ this -> currentblock , $ path ) ; } if ( empty ( $ this -> pathelements [ $ path ] ) ) { return ; } $ element = $ this -> pathelements [ $ path ] ; $ pobject = $ element -> get_processing_object ( ) ; $ method = $ element -> get_end_method ( ) ; $ tags = $ element -> get_tags ( ) ; if ( method_exists ( $ pobject , $ method ) ) { $ pobject -> $ method ( $ tags ) ; } }
docstring: Executes operations required at the end of a watched path
  
  @param string $path in the original file
docstring_tokens: Executes operations required at the end of a watched path