original_string: public function convertNewTypeSettableAttributes(array $data = null)
      {
          if (empty($data)) {
              return null;
          }
          $object = new NewTypeSettableAttributes();
  
          $object->populate(
              $data,
              array_combine(
                  JSONConstants::getCapabilityNewTypeSettableAttributeKeys(),
                  array_map(
                      function ($key) {
                          // add a prefix "canSet" to all keys as this are the property names
                          return 'canSet' . ucfirst($key);
                      },
                      JSONConstants::getCapabilityNewTypeSettableAttributeKeys()
                  )
              ),
              true
          );
  
          $object->setExtensions(
              $this->convertExtension(
                  $data,
                  JSONConstants::getCapabilityNewTypeSettableAttributeKeys()
              )
          );
  
          return $object;
      }
code: public function convertNewTypeSettableAttributes(array $data = null)
      {
          if (empty($data)) {
              return null;
          }
          $object = new NewTypeSettableAttributes();
  
          $object->populate(
              $data,
              array_combine(
                  JSONConstants::getCapabilityNewTypeSettableAttributeKeys(),
                  array_map(
                      function ($key) {
                          // add a prefix "canSet" to all keys as this are the property names
                          return 'canSet' . ucfirst($key);
                      },
                      JSONConstants::getCapabilityNewTypeSettableAttributeKeys()
                  )
              ),
              true
          );
  
          $object->setExtensions(
              $this->convertExtension(
                  $data,
                  JSONConstants::getCapabilityNewTypeSettableAttributeKeys()
              )
          );
  
          return $object;
      }
code_tokens: public function convertNewTypeSettableAttributes ( array $ data = null ) { if ( empty ( $ data ) ) { return null ; } $ object = new NewTypeSettableAttributes ( ) ; $ object -> populate ( $ data , array_combine ( JSONConstants :: getCapabilityNewTypeSettableAttributeKeys ( ) , array_map ( function ( $ key ) { // add a prefix "canSet" to all keys as this are the property names return 'canSet' . ucfirst ( $ key ) ; } , JSONConstants :: getCapabilityNewTypeSettableAttributeKeys ( ) ) ) , true ) ; $ object -> setExtensions ( $ this -> convertExtension ( $ data , JSONConstants :: getCapabilityNewTypeSettableAttributeKeys ( ) ) ) ; return $ object ; }
docstring: Create NewTypeSettableAttributes object and populate given data to it
  
  @param string[]|null $data
  @return NewTypeSettableAttributes|null Returns object or <code>null</code> if given data is empty
docstring_tokens: Create NewTypeSettableAttributes object and populate given data to it