Code Duplication    Length = 5-6 lines in 3 locations

src/list.php 3 locations

@@ 212-217 (lines=6) @@
209
function init () {
210
    static $init = false;
211
    $init = $init ?: curry(function($list) {
212
        if(is_string($list)) {
213
            $size = strlen($list);
214
            return ($size > 1)
215
                ? substr($list, 0, $size - 1)
216
                : '';
217
        }
218
        $size = count($list);
219
        return ($size > 1)
220
            ? array_slice($list, 0, $size - 1)
@@ 561-565 (lines=5) @@
558
        $length = length($list);
559
        if ($count > $length || $count < -$length)
560
            return $list;
561
        if(is_string($list)) {
562
            return ($count >= 0)
563
                ? substr($list, 0, $count)
564
                : substr($list, $count);
565
        }
566
        return ($count >= 0)
567
            ? array_slice($list, 0, $count)
568
            : array_slice($list, $count);
@@ 712-716 (lines=5) @@
709
        $count = ($count > 0)
710
            ? $count - $length
711
            : $count + $length;
712
        if(is_string($list)) {
713
            return ($count >= 0)
714
                ? substr($list, 0, $count)
715
                : substr($list, $count);
716
        }
717
        return ($count >= 0)
718
            ? array_slice($list, 0, $count)
719
            : array_slice($list, $count);