blob: 9c26b2a2f076bf9f7ea49d1a02b5200f04983128 [file] [log] [blame]
This test checks gopls behavior when hovering over basic literals.
-- basiclit.go --
package basiclit
func _() {
_ = 'a' //@hover("'a'", "'a'", latinA)
_ = 0x61 //@hover("0x61", "0x61", latinAHex)
_ = '\u2211' //@hover("'\\u2211'", "'\\u2211'", summation)
_ = 0x2211 //@hover("0x2211", "0x2211", summationHex)
_ = "foo \u2211 bar" //@hover("\\u2211", "\\u2211", summation)
_ = '\a' //@hover("'\\a'", "'\\a'", control)
_ = "foo \a bar" //@hover("\\a", "\\a", control)
_ = '\U0001F30A' //@hover("'\\U0001F30A'", "'\\U0001F30A'", waterWave)
_ = 0x0001F30A //@hover("0x0001F30A", "0x0001F30A", waterWaveHex)
_ = 0X0001F30A //@hover("0X0001F30A", "0X0001F30A", waterWaveHex)
_ = "foo \U0001F30A bar" //@hover("\\U0001F30A", "\\U0001F30A", waterWave)
_ = '\x7E' //@hover("'\\x7E'", "'\\x7E'", tilde)
_ = "foo \x7E bar" //@hover("\\x7E", "\\x7E", tilde)
_ = "foo \a bar" //@hover("\\a", "\\a", control)
_ = '\173' //@hover("'\\173'", "'\\173'", leftCurly)
_ = "foo \173 bar" //@hover("\\173","\\173", leftCurly)
_ = "foo \173 bar \u2211 baz" //@hover("\\173","\\173", leftCurly)
_ = "foo \173 bar \u2211 baz" //@hover("\\u2211","\\u2211", summation)
_ = "foo\173bar\u2211baz" //@hover("\\173","\\173", leftCurly)
_ = "foo\173bar\u2211baz" //@hover("\\u2211","\\u2211", summation)
// search for runes in string only if there is an escaped sequence
_ = "hello" //@hover(`"hello"`, _, _)
// incorrect escaped rune sequences
_ = '\0' //@hover("'\\0'", _, _),diag(re`\\0()'`, re"illegal character")
_ = '\u22111' //@hover("'\\u22111'", _, _)
_ = '\U00110000' //@hover("'\\U00110000'", _, _)
_ = '\u12e45'//@hover("'\\u12e45'", _, _)
_ = '\xa' //@hover("'\\xa'", _, _)
_ = 'aa' //@hover("'aa'", _, _)
// other basic lits
_ = 1 //@hover("1", _, _)
_ = 1.2 //@hover("1.2", _, _)
_ = 1.2i //@hover("1.2i", _, _)
_ = 0123 //@hover("0123", _, _)
_ = 0b1001 //@hover("0b", "0b1001", binaryNumber)
_ = 0B1001 //@hover("0B", "0B1001", binaryNumber)
_ = 0o77 //@hover("0o", "0o77", octalNumber)
_ = 0O77 //@hover("0O", "0O77", octalNumber)
_ = 0x1234567890 //@hover("0x1234567890", "0x1234567890", hexNumber)
_ = 0X1234567890 //@hover("0X1234567890", "0X1234567890", hexNumber)
_ = 0x1000000000000000000 //@hover("0x1", "0x1000000000000000000", bigHex)
)
-- @bigHex --
4722366482869645213696
-- @binaryNumber --
9
-- @control --
U+0007, control
-- @hexNumber --
78187493520
-- @latinA --
'a', U+0061, LATIN SMALL LETTER A
-- @latinAHex --
97, 'a', U+0061, LATIN SMALL LETTER A
-- @leftCurly --
'{', U+007B, LEFT CURLY BRACKET
-- @octalNumber --
63
-- @summation --
'∑', U+2211, N-ARY SUMMATION
-- @summationHex --
8721, '∑', U+2211, N-ARY SUMMATION
-- @tilde --
'~', U+007E, TILDE
-- @waterWave --
'🌊', U+1F30A, WATER WAVE
-- @waterWaveHex --
127754, '🌊', U+1F30A, WATER WAVE