rpl.rb/lib/core/mode.rb

36 lines
756 B
Ruby
Raw Normal View History

2021-12-07 16:09:17 +01:00
# frozen_string_literal: true
module Rpl
2021-12-07 15:50:58 +01:00
module Lang
module Core
module_function
2021-12-07 15:50:58 +01:00
# set float precision in bits. ex: 256 prec
def prec( stack )
stack, args = Rpl::Lang::Core.stack_extract( stack, [%i[numeric]] )
2021-12-07 15:50:58 +01:00
Rpl::Lang::Core.precision = args[0][:value]
2021-12-07 15:50:58 +01:00
stack
end
2021-12-07 15:50:58 +01:00
# set float representation and precision to default
def default( stack )
Rpl::Lang::Core.precision = 12
2021-12-07 15:50:58 +01:00
stack
end
2021-12-07 15:50:58 +01:00
# show type of stack first entry
def type( stack )
stack, args = Rpl::Lang::Core.stack_extract( stack, [:any] )
2021-12-07 15:50:58 +01:00
stack << args[0]
stack << { type: :string,
value: args[0][:type].to_s }
stack
end
end
end
end