id = $id; } /** * Get an ID. */ public function getId() : string { return $this->id; } /** * Get a name. */ public function getName() : ?string { return $this->name; } /** * Clone with a name. */ public function withName(?string $name) : self { $obj = new self($this->id); $obj->name = $name; return $obj; } /** * Create from an ID. */ public static function fromId(string $id) : self { return new self($id); } }