original_string: public function derivedValues($s) {
  		preg_match_all('/@(\w+)/', $s, $possibilities, PREG_SET_ORDER);
  		foreach ($possibilities as $possibility) {
  			if ($this->offsetExists($possibility[1]) && is_string($this->offsetGet($possibility[1]))) {
  				$s = str_replace($possibility[0], $this->offsetGet($possibility[1]), $s);
  			}
  		}
  		return $s;
  	}
code: public function derivedValues($s) {
  		preg_match_all('/@(\w+)/', $s, $possibilities, PREG_SET_ORDER);
  		foreach ($possibilities as $possibility) {
  			if ($this->offsetExists($possibility[1]) && is_string($this->offsetGet($possibility[1]))) {
  				$s = str_replace($possibility[0], $this->offsetGet($possibility[1]), $s);
  			}
  		}
  		return $s;
  	}
code_tokens: public function derivedValues ( $ s ) { preg_match_all ( '/@(\w+)/' , $ s , $ possibilities , PREG_SET_ORDER ) ; foreach ( $ possibilities as $ possibility ) { if ( $ this -> offsetExists ( $ possibility [ 1 ] ) && is_string ( $ this -> offsetGet ( $ possibility [ 1 ] ) ) ) { $ s = str_replace ( $ possibility [ 0 ] , $ this -> offsetGet ( $ possibility [ 1 ] ) , $ s ) ; } } return $ s ; }
docstring: Replace derived values in an abitrary string using AppMetadata
  
  @param string $s
  
  @return string
docstring_tokens: Replace derived values in an abitrary string using AppMetadata