* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Workflow; /** * Marking contains the place of every tokens. * * @author Grégoire Pineau */ class Marking { private $places = array(); /** * @param string[] $representation Keys are the place name and values should be 1 */ public function __construct(array $representation = array()) { foreach ($representation as $place => $nbToken) { $this->mark($place); } } public function mark($place) { $this->places[$place] = 1; } public function unmark($place) { unset($this->places[$place]); } public function has($place) { return isset($this->places[$place]); } public function getPlaces() { return $this->places; } }