Seditio Source
Root |
./othercms/dle15_0/upload/engine/classes/composer/vendor/aws/aws-sdk-php/src/Api/MapShape.php
<?php
namespace Aws\Api;

/**
 * Represents a map shape.
 */
class MapShape extends Shape
{
   
/** @var Shape */
   
private $value;

   
/** @var Shape */
   
private $key;

    public function
__construct(array $definition, ShapeMap $shapeMap)
    {
       
$definition['type'] = 'map';
       
parent::__construct($definition, $shapeMap);
    }

   
/**
     * @return Shape
     * @throws \RuntimeException if no value is specified
     */
   
public function getValue()
    {
        if (!
$this->value) {
            if (!isset(
$this->definition['value'])) {
                throw new \
RuntimeException('No value specified');
            }

           
$this->value = Shape::create(
               
$this->definition['value'],
               
$this->shapeMap
           
);
        }

        return
$this->value;
    }

   
/**
     * @return Shape
     */
   
public function getKey()
    {
        if (!
$this->key) {
           
$this->key = isset($this->definition['key'])
                ?
Shape::create($this->definition['key'], $this->shapeMap)
                : new
Shape(['type' => 'string'], $this->shapeMap);
        }

        return
$this->key;
    }
}