<?php 
namespace Aws\Api; 
 
/** 
 * Represents a list shape. 
 */ 
class ListShape extends Shape 
{ 
    private $member; 
 
    public function __construct(array $definition, ShapeMap $shapeMap) 
    { 
        $definition['type'] = 'list'; 
        parent::__construct($definition, $shapeMap); 
    } 
 
    /** 
     * @return Shape 
     * @throws \RuntimeException if no member is specified 
     */ 
    public function getMember() 
    { 
        if (!$this->member) { 
            if (!isset($this->definition['member'])) { 
                throw new \RuntimeException('No member attribute specified'); 
            } 
            $this->member = Shape::create( 
                $this->definition['member'], 
                $this->shapeMap 
            ); 
        } 
 
        return $this->member; 
    } 
} 
 
 |