original_string: public function setDefined($optionNames)
      {
          if ($this->locked) {
              throw new AccessException('Options cannot be defined from a lazy option or normalizer.');
          }
  
          foreach ((array) $optionNames as $option) {
              $this->defined[$option] = true;
          }
  
          return $this;
      }
code: public function setDefined($optionNames)
      {
          if ($this->locked) {
              throw new AccessException('Options cannot be defined from a lazy option or normalizer.');
          }
  
          foreach ((array) $optionNames as $option) {
              $this->defined[$option] = true;
          }
  
          return $this;
      }
code_tokens: public function setDefined ( $ optionNames ) { if ( $ this -> locked ) { throw new AccessException ( 'Options cannot be defined from a lazy option or normalizer.' ) ; } foreach ( ( array ) $ optionNames as $ option ) { $ this -> defined [ $ option ] = true ; } return $ this ; }
docstring: Defines a valid option name.
  
  Defines an option name without setting a default value. The option will
  be accepted when passed to {@link resolve()}. When not passed, the
  option will not be included in the resolved options.
  
  @param string|string[] $optionNames One or more option names
  
  @return $this
  
  @throws AccessException If called from a lazy option or normalizer
docstring_tokens: Defines a valid option name .