Code Duplication    Length = 23-23 lines in 2 locations

src/Query/Lexer.php 1 location

@@ 108-130 (lines=23) @@
105
        $this->emit(Token::T_SPREAD, $points, $location);
106
    }
107
108
    private function str()
109
    {
110
        $this->scanner->next();
111
        $location = $this->getLocation();
112
        $string = '';
113
        $previousChar = false;
114
115
        while (true) {
116
            if ($this->scanner->eof()) {
117
                throw $this->getError('Unclosed quote');
118
            }
119
            $next = $this->scanner->peek();
120
            if ($previousChar !== '\\' && $next === '"') {
121
                $this->scanner->next();
122
                break;
123
            }
124
            $previousChar = $this->scanner->next();
125
            $string .= $previousChar;
126
        }
127
128
        $string = json_decode('"' . $string . '"');
129
        $this->emit(Token::T_STRING, $string, $location);
130
    }
131
132
    private function integerPart()
133
    {

src/Schema/Lexer.php 1 location

@@ 79-101 (lines=23) @@
76
        }
77
    }
78
79
    private function str()
80
    {
81
        $this->scanner->next();
82
        $location = $this->getLocation();
83
        $string = '';
84
        $previousChar = false;
85
86
        while (true) {
87
            if ($this->scanner->eof()) {
88
                throw $this->getError('Unclosed quote');
89
            }
90
            $next = $this->scanner->peek();
91
            if ($previousChar !== '\\' && $next === '"') {
92
                $this->scanner->next();
93
                break;
94
            }
95
            $previousChar = $this->scanner->next();
96
            $string .= $previousChar;
97
        }
98
99
        $string = json_decode('"' . $string . '"');
100
        $this->emit(Token::T_STRING, $string, $location);
101
    }
102
103
    private function integerPart()
104
    {