Fix collectino with template types WIP

This commit is contained in:
stefanScrumble
2024-03-08 09:06:01 +01:00
parent 9a4c79f822
commit 9b4672969f
8 changed files with 174 additions and 63 deletions
@@ -2,29 +2,49 @@
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\CollectionModel;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\NonModel;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Collection;
use Illuminate\Support\Collection as IntCollection;
class WithCollection extends Model
{
// /**
// * @return Collection<int, string>
// */
// public function getCollectionAttribute(): Collection
// {
// return new Collection();
// }
//
// /**
// * @return Collection
// */
// public function getCollectionWithoutTemplateAttribute(): Collection
// {
// return new Collection();
// }
//
// public function getCollectionWithoutDocBlockAttribute(): Collection
// {
// return new Collection();
// }
//
// /**
// * @return Collection<int, NonModel>
// */
// public function getCollectionWithNonModelTemplateAttribute(): Collection
// {
// return new Collection();
// }
//
/**
* @return Collection<int, string>
* @return Collection<Collection, CollectionModel<IntCollection, CollectionModel<int, NonModel>>>
*/
public function getCollectionAttribute(): Collection
public function getCollectionWithNestedTemplateAttribute(): Collection
{
return new Collection();
}
/**
* @return Collection
*/
public function getCollectionWithoutTemplateAttribute(): Collection
{
return new Collection();
}
public function getCollectionWithoutDocBlockAttribute(): Collection
{
return new Collection();
}
}
@@ -0,0 +1,8 @@
<?php
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels;
class CollectionModel
{
}
@@ -0,0 +1,8 @@
<?php
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels;
class NonModel
{
}
@@ -2,33 +2,53 @@
namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\Models;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\CollectionModel;
use Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\NonModel;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Collection;
use Illuminate\Support\Collection as IntCollection;
/**
* @mixin IdeHelperWithCollection
*/
class WithCollection extends Model
{
// /**
// * @return Collection<int, string>
// */
// public function getCollectionAttribute(): Collection
// {
// return new Collection();
// }
//
// /**
// * @return Collection
// */
// public function getCollectionWithoutTemplateAttribute(): Collection
// {
// return new Collection();
// }
//
// public function getCollectionWithoutDocBlockAttribute(): Collection
// {
// return new Collection();
// }
//
// /**
// * @return Collection<int, NonModel>
// */
// public function getCollectionWithNonModelTemplateAttribute(): Collection
// {
// return new Collection();
// }
//
/**
* @return Collection<int, string>
* @return Collection<Collection, CollectionModel<IntCollection, CollectionModel<int, NonModel>>>
*/
public function getCollectionAttribute(): Collection
public function getCollectionWithNestedTemplateAttribute(): Collection
{
return new Collection();
}
/**
* @return Collection
*/
public function getCollectionWithoutTemplateAttribute(): Collection
{
return new Collection();
}
public function getCollectionWithoutDocBlockAttribute(): Collection
{
return new Collection();
}
}
<?php
@@ -48,9 +68,7 @@ namespace Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCol
/**
* Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\Models\WithCollection
*
* @property-read \Illuminate\Support\Collection<int, string> $collection
* @property-read \Illuminate\Support\Collection $collection_without_doc_block
* @property-read \Illuminate\Support\Collection $collection_without_template
* @property-read \Illuminate\Support\Collection\Illuminate\Support\Collection\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\CollectionModelIntCollection,\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\CollectionModelint,\Barryvdh\LaravelIdeHelper\Tests\Console\ModelsCommand\GenerateMixinCollection\NonModels\NonModel>> $collection_with_nested_template
* @method static \Illuminate\Database\Eloquent\Builder|WithCollection newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|WithCollection newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|WithCollection query()