# Test that operators --- dotted and unicode --- are identified correctly.

---input---
a += b.c
a .÷= .~b.c
a = !b ⋆ c!
a = b ? c : d ⊕ e
a = √(5)
a -> (a...) .+ 1
a \ b
1..2
a = a === b
a <: T
a >: T
a::T
[adjoint]'
(identity)''
adjoint'''
transpose'ᵀ
suffixed +¹ operator
suffixed +¹²³ operator

---tokens---
'a'           Name
' '           Text
'+='          Operator
' '           Text
'b'           Name
'.'           Operator
'c'           Name
'\n'          Text

'a'           Name
' '           Text
'.÷='         Operator
' '           Text
'.~'          Operator
'b'           Name
'.'           Operator
'c'           Name
'\n'          Text

'a'           Name
' '           Text
'='           Operator
' '           Text
'!'           Operator
'b'           Name
' '           Text
'⋆'           Operator
' '           Text
'c!'          Name
'\n'          Text

'a'           Name
' '           Text
'='           Operator
' '           Text
'b'           Name
' '           Text
'?'           Operator
' '           Text
'c'           Name
' '           Text
':'           Operator
' '           Text
'd'           Name
' '           Text
'⊕'           Operator
' '           Text
'e'           Name
'\n'          Text

'a'           Name
' '           Text
'='           Operator
' '           Text
'√'           Operator
'('           Punctuation
'5'           Literal.Number.Integer
')'           Punctuation
'\n'          Text

'a'           Name
' '           Text
'->'          Operator
' '           Text
'('           Punctuation
'a'           Name
'...'         Operator
')'           Punctuation
' '           Text
'.+'          Operator
' '           Text
'1'           Literal.Number.Integer
'\n'          Text

'a'           Name
' '           Text
'\\'          Operator
' '           Text
'b'           Name
'\n'          Text

'1'           Literal.Number.Integer
'..'          Operator
'2'           Literal.Number.Integer
'\n'          Text

'a'           Name
' '           Text
'='           Operator
' '           Text
'a'           Name
' '           Text
'==='         Operator
' '           Text
'b'           Name
'\n'          Text

'a'           Keyword.Type
' '           Text
'<:'          Operator
' '           Text
'T'           Keyword.Type
'\n'          Text

'a'           Keyword.Type
' '           Text
'>:'          Operator
' '           Text
'T'           Keyword.Type
'\n'          Text

'a'           Name
'::'          Operator
'T'           Keyword.Type
'\n'          Text

'['           Punctuation
'adjoint'     Name
']'           Punctuation
"'"           Operator
'\n'          Text

'('           Punctuation
'identity'    Name
')'           Punctuation
"''"          Operator
'\n'          Text

'adjoint'     Name
"'''"         Operator
'\n'          Text

'transpose'   Name
"'ᵀ"          Operator
'\n'          Text

'suffixed'    Name
' '           Text
'+¹'          Operator
' '           Text
'operator'    Name
'\n'          Text

'suffixed'    Name
' '           Text
'+¹²³'        Operator
' '           Text
'operator'    Name
'\n'          Text
