public function getOrCreateSubject($name) { if (isset($this->subjects[$name])) { return $this->subjects[$name]; } $this->subjects[$name] = new SubjectMetadata($this, $name); return $this->subjects[$name]; }