class Parser::MaxNumparamStack

@api private
Holds p->max_numparam from parse.y

def empty?

def empty?
  @stack.size == 0
end

def has_numparams?

def has_numparams?
  top && top > 0
end

def has_ordinary_params!

def has_ordinary_params!
  set(ORDINARY_PARAMS)
end

def has_ordinary_params?

def has_ordinary_params?
  top == ORDINARY_PARAMS
end

def initialize

def initialize
  @stack = []
end

def pop

def pop
  @stack.pop[:value]
end

def push(static:)

def push(static:)
  @stack.push(value: 0, static: static)
end

def register(numparam)

def register(numparam)
  set( [top, numparam].max )
end

def set(value)

def set(value)
  @stack.last[:value] = value
end

def top

def top
  @stack.last[:value]
end