Code Duplication    Length = 38-38 lines in 2 locations

src/RichParam/Parser.php 1 location

@@ 106-143 (lines=38) @@
103
     * @param string $argumentsStr
104
     * @return array
105
     */
106
    private function parseArguments($argumentsStr)
107
    {
108
        $paramArr = [];
109
        $tmpStr = '';
110
111
        $depth = 0;
112
        for ($i = 0; $i < strlen($argumentsStr); $i++) {
113
            switch ($argumentsStr[$i]) {
114
                case '(':
115
                    $tmpStr .= $argumentsStr[$i];
116
                    $depth++;
117
                    break;
118
119
                case ')':
120
                    $tmpStr .= $argumentsStr[$i];
121
                    $depth--;
122
                    break;
123
124
                case '|':
125
                    if ($depth) {
126
                        $tmpStr .= $argumentsStr[$i];
127
                    } else {
128
                        $paramArr[] = $tmpStr;
129
                        $tmpStr = '';
130
                    }
131
                    break;
132
133
                default:
134
                    $tmpStr .= $argumentsStr[$i];
135
            }
136
        }
137
138
        if (strlen($tmpStr)) {
139
            $paramArr[] = $tmpStr;
140
        }
141
142
        return $paramArr;
143
    }
144
145
    private function parseElements($richParam)
146
    {

src/Vortex.php 1 location

@@ 717-754 (lines=38) @@
714
     * @param string $s
715
     * @return array
716
     */
717
    private function parseModifierParamStringSlowButAccurate($s)
718
    {
719
        $paramArr = [];
720
        $tmpStr = '';
721
722
        $depth = 0;
723
        for ($i = 0; $i <= strlen($s); $i++) {
724
            switch ($s[$i]) {
725
                case '(':
726
                    $tmpStr .= $s[$i];
727
                    $depth++;
728
                    break;
729
730
                case ')':
731
                    $tmpStr .= $s[$i];
732
                    $depth--;
733
                    break;
734
735
                case '|':
736
                    if ($depth) {
737
                        $tmpStr .= $s[$i];
738
                    } else {
739
                        $paramArr[] = $tmpStr;
740
                        $tmpStr = '';
741
                    }
742
                    break;
743
744
                default:
745
                    $tmpStr .= $s[$i];
746
            }
747
        }
748
749
        if (strlen($tmpStr)) {
750
            $paramArr[] = $tmpStr;
751
        }
752
753
        return $paramArr;
754
    }
755
756
    /**
757
     * Checks if includeName is an include nested inside a recursive inclusion.