============================================
Literal strings (short/long)
============================================

'a short literal string with single \'quote\''
"a short literal string with double \"quote\""

[[
a level 0 long literal string
with double brackets [=[ a level 1 string completely ignored ]=]
]]

[==[
a level 2 long literal string
with double brackets [[ a level 0 string completely ignored ]]
]==]

"a string with comment token inside -> -- disabled comment"

[[
a level 0 long literal string with comment token inside -> -- disabled comment
]]

---

(program
  (expression (string))
  (expression (string))

  (expression (string))

  (expression (string))

  (expression (string))

  (expression (string)))

============================================
Numeric constants
============================================

3
345
0xff
0xBEBADA
3.0
3.1416
314.16e-2
0.31416E1
34e1
0x0.1E
0xA23p-4
0X1.921FB54442D18P+1

---

(program
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number))
  (expression (number)))

=============================
Shebang
=============================

#!foobar

return

---

(program
  (shebang)
  (return_statement))
