true) */ public string $dn; /** * @Field */ public string $cn; /** * @Field */ public array $objectClass; public static function resolveEntity() : EntityResolver { return Ulmus::resolveEntity(static::class); } public static function repository(string $alias = Repository::DEFAULT_ALIAS) : Repository { return new Repository(static::class, $alias); } public static function field($name, ? string $alias = null) : EntityField { return new EntityField(static::class, $name, $alias ?: Repository::DEFAULT_ALIAS, Ulmus::resolveEntity(static::class)); } public static function fields(array $fields, ? string $alias = null) : string { return implode(', ', array_map(function($item) use ($alias){ return static::field($item, $alias); }, $fields)); } }