Skip to content

Commit 66f9a5e

Browse files
committed
Add tags platform support
1 parent 0c43181 commit 66f9a5e

85 files changed

Lines changed: 781 additions & 502 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/DocBlock/Combinator/CallableTypeCombinator.php

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
namespace TypeLang\PhpDoc\DocBlock\Combinator;
66

7+
use TypeLang\Parser\TypeParserInterface;
78
use TypeLang\PhpDoc\DocBlock\Reference\TypeReference;
89
use TypeLang\PhpDoc\Parser\Grammar\CombinatorInterface;
910
use TypeLang\PhpDoc\Parser\Grammar\Cursor;
@@ -20,9 +21,12 @@
2021
{
2122
public const string NAME = 'CallableType';
2223

23-
public function __construct(
24-
private TypeCombinator $types,
25-
) {}
24+
private TypeCombinator $types;
25+
26+
public function __construct(TypeParserInterface $types)
27+
{
28+
$this->types = new TypeCombinator($types);
29+
}
2630

2731
public function __invoke(Cursor $cursor): TypeReference
2832
{

src/DocBlock/Tag/AbstractTag/AbstractTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1010
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1111
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
12+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1213

1314
/**
1415
* The "`@abstract`" tag declares an element as abstract.
@@ -28,7 +29,7 @@ public function __construct()
2829
spec: Spec::maybe(
2930
Spec::rule(DescriptionCombinator::NAME, 'description'),
3031
),
31-
isInline: false,
32+
placement: TagPlacement::Block,
3233
);
3334
}
3435

src/DocBlock/Tag/AccessTag/AccessTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1111
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1212
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
13+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1314

1415
/**
1516
* The "`@access`" tag documents the visibility (access level) of an element.
@@ -32,7 +33,7 @@ public function __construct()
3233
Spec::rule(DescriptionCombinator::NAME, 'description'),
3334
),
3435
),
35-
isInline: false,
36+
placement: TagPlacement::Block,
3637
);
3738
}
3839

src/DocBlock/Tag/ApiTag/ApiTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1010
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1111
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
12+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1213

1314
/**
1415
* The "`@api`" tag marks an element as part of the public, supported API of its
@@ -29,7 +30,7 @@ public function __construct()
2930
spec: Spec::maybe(
3031
Spec::rule(DescriptionCombinator::NAME, 'description'),
3132
),
32-
isInline: false,
33+
placement: TagPlacement::Block,
3334
);
3435
}
3536

src/DocBlock/Tag/AuthorTag/AuthorTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1212
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1313
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
14+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1415

1516
/**
1617
* The "`@author`" tag documents the author of an element, together with an
@@ -41,7 +42,7 @@ public function __construct()
4142
Spec::rule(DescriptionCombinator::NAME, 'description'),
4243
),
4344
),
44-
isInline: false,
45+
placement: TagPlacement::Block,
4546
);
4647
}
4748

src/DocBlock/Tag/CategoryTag/CategoryTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1010
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1111
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
12+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1213

1314
/**
1415
* The "`@category`" tag organizes groups of packages together.
@@ -28,7 +29,7 @@ public function __construct()
2829
spec: Spec::maybe(
2930
Spec::rule(DescriptionCombinator::NAME, 'description'),
3031
),
31-
isInline: false,
32+
placement: TagPlacement::Block,
3233
);
3334
}
3435

src/DocBlock/Tag/CopyrightTag/CopyrightTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1010
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1111
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
12+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1213

1314
/**
1415
* The "`@copyright`" tag documents the copyright information of an element.
@@ -28,7 +29,7 @@ public function __construct()
2829
spec: Spec::maybe(
2930
Spec::rule(DescriptionCombinator::NAME, 'description'),
3031
),
31-
isInline: false,
32+
placement: TagPlacement::Block,
3233
);
3334
}
3435

src/DocBlock/Tag/DeprecatedTag/DeprecatedTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1111
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1212
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
13+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1314

1415
/**
1516
* The "`@deprecated`" tag marks an element as deprecated, optionally since
@@ -31,7 +32,7 @@ public function __construct()
3132
Spec::maybe(Spec::rule(VersionCombinator::NAME, 'version')),
3233
Spec::maybe(Spec::rule(DescriptionCombinator::NAME, 'description')),
3334
),
34-
isInline: false,
35+
placement: TagPlacement::Block,
3536
);
3637
}
3738

src/DocBlock/Tag/ExampleTag/ExampleTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1414
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1515
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
16+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1617

1718
/**
1819
* The "`@example`" tag points at an external source illustrating the use of the
@@ -47,7 +48,7 @@ public function __construct()
4748
Spec::rule(DescriptionCombinator::NAME, 'description'),
4849
),
4950
),
50-
isInline: false,
51+
placement: TagPlacement::Any,
5152
);
5253
}
5354

src/DocBlock/Tag/FilesourceTag/FilesourceTagDefinition.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use TypeLang\PhpDoc\DocBlock\TagDefinition\Spec;
1010
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagDefinition;
1111
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPayload;
12+
use TypeLang\PhpDoc\DocBlock\TagDefinition\TagPlacement;
1213

1314
/**
1415
* The "`@filesource`" tag tells documentation tooling to include the source of
@@ -29,7 +30,7 @@ public function __construct()
2930
spec: Spec::maybe(
3031
Spec::rule(DescriptionCombinator::NAME, 'description'),
3132
),
32-
isInline: false,
33+
placement: TagPlacement::Block,
3334
);
3435
}
3536

0 commit comments

Comments
 (0)