def tokenize_integer_literal
      @expr_state = :end
      if peek_ahead_for(/[_oObBxX]/)
        advance(2) # Pass 0x / 0b / 0O
      else
        advance # Pass 0 for Octal digits
      end
      pattern = {:bin_literal => /[01]/,
                 :oct_literal => /[0-7]/,
                 :hex_literal => /[0-9a-fA-F]/}[@state]
      advance until( pattern.match( cchar ).nil? )
      capture_token( @state )
    end
def tokenize_integer_literal
      @expr_state = :end
      if peek_ahead_for(/[_oObBxX]/)
        advance(2) # Pass 0x / 0b / 0O
      else
        advance # Pass 0 for Octal digits
      end
      pattern = {:bin_literal => /[01]/,
                 :oct_literal => /[0-7]/,
                 :hex_literal => /[0-9a-fA-F]/}[@state]
      advance until( pattern.match( cchar ).nil? )
      capture_token( @state )
    end
Tokenize a non-decimal integer literal - e.g. Ox4F2E, 0b1101