public function registerField(ARField $schemaField, $reference = true) { $name = $schemaField->getName(); $this->fieldList[$name] = $schemaField; if ($schemaField instanceof ARForeignKey) { $this->foreignKeyList[$name] = $schemaField; } if ($schemaField instanceof ARPrimaryKey) { $this->primaryKeyList[$name] = $schemaField; } if (!$reference) { $this->skippedReferences[$name] = true; } $this->fieldsByType[get_class($schemaField->getDataType())][$name] = $schemaField; }