mirror of
https://github.com/ralsina/tartrazine.git
synced 2024-11-10 13:32:24 +00:00
77 lines
1.8 KiB
Plaintext
77 lines
1.8 KiB
Plaintext
---input---
|
|
def<=>(other : self) : Int
|
|
{%for field in %w(first_name middle_name last_name)%}
|
|
cmp={{field.id}}<=>other.{{field.id}}
|
|
return cmp if cmp!=0
|
|
{%end%}
|
|
0
|
|
end
|
|
|
|
---tokens---
|
|
'def' Keyword
|
|
'<=>' Name.Function
|
|
'(' Punctuation
|
|
'other' Name
|
|
' ' Text.Whitespace
|
|
':' Punctuation
|
|
' ' Text.Whitespace
|
|
'self' Keyword
|
|
')' Punctuation
|
|
' ' Text.Whitespace
|
|
':' Punctuation
|
|
' ' Text.Whitespace
|
|
'Int' Name
|
|
'\n' Text.Whitespace
|
|
|
|
'{%' Literal.String.Interpol
|
|
'for' Keyword
|
|
' ' Text.Whitespace
|
|
'field' Name
|
|
' ' Text.Whitespace
|
|
'in' Keyword
|
|
' ' Text.Whitespace
|
|
'%w(' Literal.String.Other
|
|
'first_name middle_name last_name' Literal.String.Other
|
|
')' Literal.String.Other
|
|
'%}' Literal.String.Interpol
|
|
'\n' Text.Whitespace
|
|
|
|
'cmp' Name
|
|
'=' Operator
|
|
'{{' Literal.String.Interpol
|
|
'field' Name
|
|
'.' Operator
|
|
'id' Name
|
|
'}}' Literal.String.Interpol
|
|
'<=>' Operator
|
|
'other' Name
|
|
'.' Operator
|
|
'{{' Literal.String.Interpol
|
|
'field' Name
|
|
'.' Operator
|
|
'id' Name
|
|
'}}' Literal.String.Interpol
|
|
'\n' Text.Whitespace
|
|
|
|
'return' Keyword
|
|
' ' Text.Whitespace
|
|
'cmp' Name
|
|
' ' Text.Whitespace
|
|
'if' Keyword
|
|
' ' Text.Whitespace
|
|
'cmp' Name
|
|
'!=' Operator
|
|
'0' Literal.Number.Integer
|
|
'\n' Text.Whitespace
|
|
|
|
'{%' Literal.String.Interpol
|
|
'end' Keyword
|
|
'%}' Literal.String.Interpol
|
|
'\n' Text.Whitespace
|
|
|
|
'0' Literal.Number.Integer
|
|
'\n' Text.Whitespace
|
|
|
|
'end' Keyword
|
|
'\n' Text.Whitespace
|