Skip to content

Commit 7ae6452

Browse files
authored
refactor(index): rename isGlobal to isMember (#511)
isGlobal was confusing because a non-member can be considered global vs namespaced
1 parent c74076d commit 7ae6452

File tree

61 files changed

+165
-164
lines changed

Some content is hidden

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

61 files changed

+165
-164
lines changed

src/CompletionProvider.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ public function provideCompletion(PhpDocument $doc, Position $pos): CompletionLi
210210
// Collect all definitions that match any of the prefixes
211211
foreach ($this->index->getDefinitions() as $fqn => $def) {
212212
foreach ($prefixes as $prefix) {
213-
if (substr($fqn, 0, strlen($prefix)) === $prefix && !$def->isGlobal) {
213+
if (substr($fqn, 0, strlen($prefix)) === $prefix && $def->isMember) {
214214
$list->items[] = CompletionItem::fromDefinition($def);
215215
}
216216
}
@@ -243,7 +243,7 @@ public function provideCompletion(PhpDocument $doc, Position $pos): CompletionLi
243243
// Collect all definitions that match any of the prefixes
244244
foreach ($this->index->getDefinitions() as $fqn => $def) {
245245
foreach ($prefixes as $prefix) {
246-
if (substr(strtolower($fqn), 0, strlen($prefix)) === strtolower($prefix) && !$def->isGlobal) {
246+
if (substr(strtolower($fqn), 0, strlen($prefix)) === strtolower($prefix) && $def->isMember) {
247247
$list->items[] = CompletionItem::fromDefinition($def);
248248
}
249249
}
@@ -316,7 +316,7 @@ public function provideCompletion(PhpDocument $doc, Position $pos): CompletionLi
316316

317317
if (
318318
// Exclude methods, properties etc.
319-
$def->isGlobal
319+
!$def->isMember
320320
&& (
321321
!$prefix
322322
|| (

src/Definition.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,13 @@ class Definition
3939
public $extends;
4040

4141
/**
42-
* Only true for classes, interfaces, traits, functions and non-class constants
42+
* False for classes, interfaces, traits, functions and non-class constants
43+
* True for methods, properties and class constants
4344
* This is so methods and properties are not suggested in the global scope
4445
*
4546
* @var bool
4647
*/
47-
public $isGlobal;
48+
public $isMember;
4849

4950
/**
5051
* True if this definition is affected by global namespace fallback (global function or global constant)

src/DefinitionResolver.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ public function createDefinitionFromNode(Node $node, string $fqn = null): Defini
181181
);
182182

183183
// Interfaces, classes, traits, namespaces, functions, and global const elements
184-
$def->isGlobal = (
184+
$def->isMember = !(
185185
$node instanceof PhpParser\ClassLike ||
186186

187187
($node instanceof Node\Statement\NamespaceDefinition && $node->name !== null) ||

tests/Validation/cases/WithReturnTypehints.php.expected.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"Fixtures\\Prophecy": {
2121
"fqn": "Fixtures\\Prophecy",
2222
"extends": [],
23-
"isGlobal": true,
23+
"isMember": false,
2424
"roamed": false,
2525
"isStatic": false,
2626
"canBeInstantiated": false,
@@ -41,7 +41,7 @@
4141
"extends": [
4242
"Fixtures\\Prophecy\\EmptyClass"
4343
],
44-
"isGlobal": true,
44+
"isMember": false,
4545
"roamed": false,
4646
"isStatic": false,
4747
"canBeInstantiated": true,
@@ -60,7 +60,7 @@
6060
"Fixtures\\Prophecy\\WithReturnTypehints->getSelf()": {
6161
"fqn": "Fixtures\\Prophecy\\WithReturnTypehints->getSelf()",
6262
"extends": [],
63-
"isGlobal": false,
63+
"isMember": true,
6464
"roamed": false,
6565
"isStatic": false,
6666
"canBeInstantiated": false,
@@ -80,7 +80,7 @@
8080
"Fixtures\\Prophecy\\WithReturnTypehints->getName()": {
8181
"fqn": "Fixtures\\Prophecy\\WithReturnTypehints->getName()",
8282
"extends": [],
83-
"isGlobal": false,
83+
"isMember": true,
8484
"roamed": false,
8585
"isStatic": false,
8686
"canBeInstantiated": false,
@@ -100,7 +100,7 @@
100100
"Fixtures\\Prophecy\\WithReturnTypehints->getParent()": {
101101
"fqn": "Fixtures\\Prophecy\\WithReturnTypehints->getParent()",
102102
"extends": [],
103-
"isGlobal": false,
103+
"isMember": true,
104104
"roamed": false,
105105
"isStatic": false,
106106
"canBeInstantiated": false,

tests/Validation/cases/anonymousClassMembersShouldNotBeSymbols.php.expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"MyNamespace": {
55
"fqn": "MyNamespace",
66
"extends": [],
7-
"isGlobal": true,
7+
"isMember": false,
88
"roamed": false,
99
"isStatic": false,
1010
"canBeInstantiated": false,

tests/Validation/cases/arrayValueShouldBeBoolean.php.expected.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"A": {
55
"fqn": "A",
66
"extends": [],
7-
"isGlobal": true,
7+
"isMember": false,
88
"roamed": false,
99
"isStatic": false,
1010
"canBeInstantiated": true,
@@ -23,7 +23,7 @@
2323
"A->foo": {
2424
"fqn": "A->foo",
2525
"extends": [],
26-
"isGlobal": false,
26+
"isMember": true,
2727
"roamed": false,
2828
"isStatic": false,
2929
"canBeInstantiated": false,

tests/Validation/cases/caseStatement1.php.expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"MyNamespace": {
1212
"fqn": "MyNamespace",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,

tests/Validation/cases/classDefinition1.php.expected.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"TestNamespace": {
1212
"fqn": "TestNamespace",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,
@@ -30,7 +30,7 @@
3030
"TestNamespace\\A": {
3131
"fqn": "TestNamespace\\A",
3232
"extends": [],
33-
"isGlobal": true,
33+
"isMember": false,
3434
"roamed": false,
3535
"isStatic": false,
3636
"canBeInstantiated": true,
@@ -49,7 +49,7 @@
4949
"TestNamespace\\A->a": {
5050
"fqn": "TestNamespace\\A->a",
5151
"extends": [],
52-
"isGlobal": false,
52+
"isMember": true,
5353
"roamed": false,
5454
"isStatic": false,
5555
"canBeInstantiated": false,

tests/Validation/cases/classProperty1.php.expected.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"TestNamespace": {
1212
"fqn": "TestNamespace",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,
@@ -30,7 +30,7 @@
3030
"TestNamespace\\TestClass": {
3131
"fqn": "TestNamespace\\TestClass",
3232
"extends": [],
33-
"isGlobal": true,
33+
"isMember": false,
3434
"roamed": false,
3535
"isStatic": false,
3636
"canBeInstantiated": true,
@@ -49,7 +49,7 @@
4949
"TestNamespace\\TestClass->testProperty": {
5050
"fqn": "TestNamespace\\TestClass->testProperty",
5151
"extends": [],
52-
"isGlobal": false,
52+
"isMember": true,
5353
"roamed": false,
5454
"isStatic": false,
5555
"canBeInstantiated": false,
@@ -69,7 +69,7 @@
6969
"TestNamespace\\TestClass->testMethod()": {
7070
"fqn": "TestNamespace\\TestClass->testMethod()",
7171
"extends": [],
72-
"isGlobal": false,
72+
"isMember": true,
7373
"roamed": false,
7474
"isStatic": false,
7575
"canBeInstantiated": false,

tests/Validation/cases/constants.php.expected.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"MyNamespace": {
1212
"fqn": "MyNamespace",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,
@@ -30,7 +30,7 @@
3030
"MyNamespace\\A": {
3131
"fqn": "MyNamespace\\A",
3232
"extends": [],
33-
"isGlobal": true,
33+
"isMember": false,
3434
"roamed": false,
3535
"isStatic": false,
3636
"canBeInstantiated": true,
@@ -49,7 +49,7 @@
4949
"MyNamespace\\A::suite()": {
5050
"fqn": "MyNamespace\\A::suite()",
5151
"extends": [],
52-
"isGlobal": false,
52+
"isMember": true,
5353
"roamed": false,
5454
"isStatic": true,
5555
"canBeInstantiated": false,

tests/Validation/cases/constants2.php.expected.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"MyNamespace": {
1212
"fqn": "MyNamespace",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,
@@ -30,7 +30,7 @@
3030
"MyNamespace\\A": {
3131
"fqn": "MyNamespace\\A",
3232
"extends": [],
33-
"isGlobal": true,
33+
"isMember": false,
3434
"roamed": false,
3535
"isStatic": false,
3636
"canBeInstantiated": true,
@@ -49,7 +49,7 @@
4949
"MyNamespace\\A::suite()": {
5050
"fqn": "MyNamespace\\A::suite()",
5151
"extends": [],
52-
"isGlobal": false,
52+
"isMember": true,
5353
"roamed": false,
5454
"isStatic": true,
5555
"canBeInstantiated": false,

tests/Validation/cases/constants3.php.expected.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"MyNamespace": {
1212
"fqn": "MyNamespace",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,
@@ -30,7 +30,7 @@
3030
"MyNamespace\\A": {
3131
"fqn": "MyNamespace\\A",
3232
"extends": [],
33-
"isGlobal": true,
33+
"isMember": false,
3434
"roamed": false,
3535
"isStatic": false,
3636
"canBeInstantiated": true,
@@ -49,7 +49,7 @@
4949
"MyNamespace\\A::suite()": {
5050
"fqn": "MyNamespace\\A::suite()",
5151
"extends": [],
52-
"isGlobal": false,
52+
"isMember": true,
5353
"roamed": false,
5454
"isStatic": true,
5555
"canBeInstantiated": false,

tests/Validation/cases/constants4.php.expected.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"MyNamespace": {
1212
"fqn": "MyNamespace",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,
@@ -30,7 +30,7 @@
3030
"MyNamespace\\A": {
3131
"fqn": "MyNamespace\\A",
3232
"extends": [],
33-
"isGlobal": true,
33+
"isMember": false,
3434
"roamed": false,
3535
"isStatic": false,
3636
"canBeInstantiated": true,
@@ -49,7 +49,7 @@
4949
"MyNamespace\\A->suite()": {
5050
"fqn": "MyNamespace\\A->suite()",
5151
"extends": [],
52-
"isGlobal": false,
52+
"isMember": true,
5353
"roamed": false,
5454
"isStatic": false,
5555
"canBeInstantiated": false,

tests/Validation/cases/constants5.php.expected.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"MyNamespace": {
99
"fqn": "MyNamespace",
1010
"extends": [],
11-
"isGlobal": true,
11+
"isMember": false,
1212
"roamed": false,
1313
"isStatic": false,
1414
"canBeInstantiated": false,
@@ -27,7 +27,7 @@
2727
"MyNamespace\\Mbstring": {
2828
"fqn": "MyNamespace\\Mbstring",
2929
"extends": [],
30-
"isGlobal": true,
30+
"isMember": false,
3131
"roamed": false,
3232
"isStatic": false,
3333
"canBeInstantiated": true,
@@ -46,7 +46,7 @@
4646
"MyNamespace\\Mbstring::MB_CASE_FOLD": {
4747
"fqn": "MyNamespace\\Mbstring::MB_CASE_FOLD",
4848
"extends": [],
49-
"isGlobal": false,
49+
"isMember": true,
5050
"roamed": false,
5151
"isStatic": false,
5252
"canBeInstantiated": false,

tests/Validation/cases/constantsInFunctionParamDefault.php.expected.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"A": {
99
"fqn": "A",
1010
"extends": [],
11-
"isGlobal": true,
11+
"isMember": false,
1212
"roamed": false,
1313
"isStatic": false,
1414
"canBeInstantiated": false,
@@ -27,7 +27,7 @@
2727
"A->b()": {
2828
"fqn": "A->b()",
2929
"extends": [],
30-
"isGlobal": false,
30+
"isMember": true,
3131
"roamed": false,
3232
"isStatic": false,
3333
"canBeInstantiated": false,

tests/Validation/cases/docBlocksOnNamespaceDefinition.php.expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"MyNamespace": {
55
"fqn": "MyNamespace",
66
"extends": [],
7-
"isGlobal": true,
7+
"isMember": false,
88
"roamed": false,
99
"isStatic": false,
1010
"canBeInstantiated": false,

tests/Validation/cases/exceptions1.php.expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"MyNamespace": {
99
"fqn": "MyNamespace",
1010
"extends": [],
11-
"isGlobal": true,
11+
"isMember": false,
1212
"roamed": false,
1313
"isStatic": false,
1414
"canBeInstantiated": false,

tests/Validation/cases/ifStatement1.php.expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"MyNamespace": {
1212
"fqn": "MyNamespace",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,

tests/Validation/cases/interfaceProperty.php.expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"A": {
55
"fqn": "A",
66
"extends": [],
7-
"isGlobal": true,
7+
"isMember": false,
88
"roamed": false,
99
"isStatic": false,
1010
"canBeInstantiated": false,

tests/Validation/cases/magicConstantsShouldBeGlobal.php.expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"B": {
1212
"fqn": "B",
1313
"extends": [],
14-
"isGlobal": true,
14+
"isMember": false,
1515
"roamed": false,
1616
"isStatic": false,
1717
"canBeInstantiated": false,

0 commit comments

Comments
 (0)