Skip to content

Commit ac9d80d

Browse files
committed
Change order of conditions to please psalm
1 parent 9b29819 commit ac9d80d

31 files changed

+145
-145
lines changed

generator/src/OperatorClassGenerator.php

+12-12
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,18 @@ public function createClass(GeneratorDefinition $definition, OperatorDefinition
135135
$constructorParam->setDefaultValue($argument->default);
136136
}
137137

138+
if ($type->dollarPrefixedString) {
139+
$namespace->addUseFunction('is_string');
140+
$namespace->addUseFunction('str_starts_with');
141+
$namespace->addUse(InvalidArgumentException::class);
142+
$constructor->addBody(<<<PHP
143+
if (is_string(\${$argument->propertyName}) && ! str_starts_with(\${$argument->propertyName}, '$')) {
144+
throw new InvalidArgumentException('Argument \${$argument->propertyName} can be an expression, field paths and variable names must be prefixed by "$" or "$$".');
145+
}
146+
147+
PHP);
148+
}
149+
138150
// List type must be validated with array_is_list()
139151
if ($type->list) {
140152
$namespace->addUseFunction('is_array');
@@ -169,18 +181,6 @@ public function createClass(GeneratorDefinition $definition, OperatorDefinition
169181
170182
PHP);
171183
}
172-
173-
if ($type->dollarPrefixedString) {
174-
$namespace->addUseFunction('is_string');
175-
$namespace->addUseFunction('str_starts_with');
176-
$namespace->addUse(InvalidArgumentException::class);
177-
$constructor->addBody(<<<PHP
178-
if (is_string(\${$argument->propertyName}) && ! str_starts_with(\${$argument->propertyName}, '$')) {
179-
throw new InvalidArgumentException('Argument \${$argument->propertyName} can be an expression, field paths and variable names must be prefixed by "$" or "$$".');
180-
}
181-
182-
PHP);
183-
}
184184
}
185185

186186
// Set property from constructor argument

src/Builder/Accumulator/AccumulatorAccumulator.php

+8-8
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Accumulator/LastNAccumulator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Accumulator/MaxNAccumulator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Accumulator/MinNAccumulator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Accumulator/PercentileAccumulator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/AllElementsTrueOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/AnyElementTrueOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/ArrayElemAtOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/ArrayToObjectOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/FilterOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/FirstNOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/FirstOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/InOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/IndexOfArrayOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/LastNOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/LastOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/MapOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Builder/Expression/MaxNOperator.php

+4-4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)