• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

nette / latte / 22359082277

24 Feb 2026 04:03PM UTC coverage: 93.959% (+0.05%) from 93.907%
22359082277

push

github

dg
fixed operator ! priority

5273 of 5612 relevant lines covered (93.96%)

0.94 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

93.75
/src/Latte/Compiler/Nodes/Php/Expression/StaticMethodCallableNode.php
1
<?php declare(strict_types=1);
2

3
/**
4
 * This file is part of the Latte (https://latte.nette.org)
5
 * Copyright (c) 2008 David Grudl (https://davidgrudl.com)
6
 */
7

8
namespace Latte\Compiler\Nodes\Php\Expression;
9

10
use Latte\Compiler\Nodes\Php\ExpressionNode;
11
use Latte\Compiler\Nodes\Php\IdentifierNode;
12
use Latte\Compiler\Nodes\Php\NameNode;
13
use Latte\Compiler\Position;
14
use Latte\Compiler\PrintContext;
15
use const PHP_VERSION_ID;
16

17

18
class StaticMethodCallableNode extends ExpressionNode
19
{
20
        public function __construct(
1✔
21
                public NameNode|ExpressionNode $class,
22
                public IdentifierNode|ExpressionNode $name,
23
                public ?Position $position = null,
24
        ) {
25
        }
1✔
26

27

28
        public function print(PrintContext $context): string
1✔
29
        {
30
                $name = match (true) {
1✔
31
                        $this->name instanceof VariableNode => $this->name->print($context),
1✔
32
                        $this->name instanceof ExpressionNode => '{' . $this->name->print($context) . '}',
1✔
33
                        default => $this->name,
1✔
34
                };
35
                return PHP_VERSION_ID < 80100
1✔
36
                        ? '[' . $this->class->print($context) . ', ' . $context->memberAsString($this->name) . ']'
×
37
                        : $context->dereferenceExpr($this->class) . '::' . $name . '(...)';
1✔
38
        }
39

40

41
        public function &getIterator(): \Generator
1✔
42
        {
43
                yield $this->class;
1✔
44
                yield $this->name;
1✔
45
        }
1✔
46
}
47

48

49
class_alias(StaticMethodCallableNode::class, StaticCallableNode::class);
1✔
50

51
if (false) {
1✔
52
        /** @deprecated use Latte\Compiler\Nodes\Php\Expression\StaticMethodCallableNode */
53
        class StaticCallableNode
54
        {
55
        }
56
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc