File: testContextSensitiveLexer.php

package info (click to toggle)
libnb-platform18-java 12.1-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 729,800 kB
  • sloc: java: 5,059,097; xml: 574,432; php: 78,788; javascript: 29,039; ansic: 10,278; sh: 6,386; cpp: 4,612; jsp: 3,643; sql: 1,097; makefile: 540; objc: 288; perl: 277; haskell: 93
file content (59 lines) | stat: -rw-r--r-- 954 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
interface MyInterface
{
    const interface = "interface";

    public function implements();
}

class ParentClass implements MyInterface
{
    const CONST = "CONST";

    public static function new($new) {
        self::interface;
        return new static();
    }

    public function implements() {
    }
}

trait MyTrait
{
    public function trait($a) {
    }
}

class ChildClass extends ParentClass
{
    use MyTrait;

    const GOTO = [1, 2], IF = 2;
    const ECHO = "ECHO", FOR = 1;

    public function foreach($test) {
        self::GOTO[0];
        static::ECHO;
        parent::CONST;
        ChildClass::IF;
        $this->implements();
    }

    public static function for() {
    }
}

MyInterface::interface;

$parent = new ParentClass();
$parent::CONST;
ParentClass::CONST;

$child = new ChildClass();
$child::GOTO[0];
ChildClass::FOR;
ChildClass::for();
ChildClass::new("test");
$child->foreach("test");
$child->trait("trait");