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 create(string $id): self { return new self($id); } }