Class: Drop

Inherits:
Op
  • Object
show all
Defined in:
lib/jop.rb

Constant Summary collapse

REP =
'}.'

Instance Method Summary collapse

Methods inherited from Op

#apply_monad_deep, #integer_args, #numeric_literal?, #to_numeric

Instance Method Details

#run(ary, interpreter) ⇒ Object



64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/jop.rb', line 64

def run ary, interpreter
  if interpreter.tokens.size > 0 && numeric_literal?(interpreter.tokens[0])
    number = to_numeric(interpreter.tokens[0])
    interpreter.advance(1)
    if number >= 0
      ary.drop(number)
    else
      ary.reverse.drop(-number).reverse
    end
  else
    ary.drop(1)
  end
end