Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit0b3be27

Browse files
authored
Merge pull requestHaehnchen#1691 from Haehnchen/feature/defaults-template
support default function parameter values for extracting template render scope
2 parentsbc35f8b +e42d4a9 commit0b3be27

File tree

2 files changed

+11
-6
lines changed

2 files changed

+11
-6
lines changed

‎src/main/java/fr/adrienbrault/idea/symfony2plugin/templating/util/PhpMethodVariableResolveUtil.java‎

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -353,17 +353,21 @@ private void resolvePhpReference(@NotNull MethodReference methodReference, PsiEl
353353
if (defaultValueinstanceofStringLiteralExpression) {
354354
addStringLiteralScope(methodReference, (StringLiteralExpression)defaultValue);
355355
}
356-
}
357-
358-
// foo($var) => $var = 'test.html.twig'
359-
if (phpNamedElementinstanceofVariable) {
356+
}elseif (phpNamedElementinstanceofVariable) {
357+
// foo($var) => $var = 'test.html.twig'
360358
PsiElementassignmentExpression =phpNamedElement.getParent();
361359
if (assignmentExpressioninstanceofAssignmentExpression) {
362360
PhpPsiElementvalue = ((AssignmentExpression)assignmentExpression).getValue();
363361
if (valueinstanceofStringLiteralExpression) {
364362
addStringLiteralScope(methodReference, (StringLiteralExpression)value);
365363
}
366364
}
365+
}elseif (phpNamedElementinstanceofParameter) {
366+
// function foobar($defaultParameter = 'default-function-parameter.html.twig')
367+
PsiElementvalue = ((Parameter)phpNamedElement).getDefaultValue();
368+
if (valueinstanceofStringLiteralExpression) {
369+
addStringLiteralScope(methodReference, (StringLiteralExpression)value);
370+
}
367371
}
368372
}
369373
}

‎src/test/java/fr/adrienbrault/idea/symfony2plugin/tests/stubs/indexes/PhpTwigTemplateUsageStubIndexTest.java‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public void testThatTwigRenderMethodsAreInIndex() {
1818
" const FOO_TERNARY = 'const-ternary.html.twig';\n" +
1919
" const FOO_COALESCE = 'const-coalesce.html.twig';\n" +
2020
" private $foo = 'private.html.twig';\n" +
21-
" public function foobar() {\n" +
21+
" public function foobar($defaultParameter = 'default-function-parameter.html.twig') {\n" +
2222
" $var = 'var.html.twig';\n" +
2323
" $foo->render('foo-render.html.twig');\n" +
2424
" $foo->render('foo-render.html.twig');\n" +
@@ -35,6 +35,7 @@ public void testThatTwigRenderMethodsAreInIndex() {
3535
" $foo->render($var);\n" +
3636
" $foo->render($this->foo);\n" +
3737
" $foo->render(\\DateTime::foo);\n" +
38+
" $foo->renderView($defaultParameter);\n" +
3839
" }\n" +
3940
"}" +
4041
"" +
@@ -49,7 +50,7 @@ public void testThatTwigRenderMethodsAreInIndex() {
4950
"foo-render.html.twig","foo-renderView.html.twig","foo-renderResponse.html.twig",
5051
"@Foo/overwrite.html.twig","const.html.twig","var.html.twig","private.html.twig","foobar-render.twig",
5152
"foo-render-ternary.html.twig","const-ternary.html.twig","foo-render-coalesce.html.twig","const-coalesce.html.twig",
52-
"foo-var-assignment-expression.html.twig"
53+
"foo-var-assignment-expression.html.twig","default-function-parameter.html.twig"
5354
);
5455

5556
assertIndexContainsKeyWithValue(PhpTwigTemplateUsageStubIndex.KEY,"foo-render.html.twig",value ->

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp