mirror of
https://github.com/alecthomas/chroma.git
synced 2025-03-17 20:58:08 +02:00
Deduplicate a bunch of text in Scala lexer.
This is part of an effort to speed up compilation of the lexers package.
This commit is contained in:
parent
71ddf5511a
commit
4afa8aa3ed
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
16
lexers/testdata/scala.actual
vendored
Normal file
16
lexers/testdata/scala.actual
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
object abstractTypes extends Application {
|
||||
abstract class Buffer {
|
||||
type T; val element: T
|
||||
}
|
||||
abstract class SeqBuffer {
|
||||
type T; val element: Seq[T]; def length = element.length
|
||||
}
|
||||
def newIntBuffer(el: Int) = new Buffer {
|
||||
type T = Int; val element = el
|
||||
}
|
||||
def newIntBuffer(el: Int*) = new SeqBuffer {
|
||||
type T = Int; val element = el
|
||||
}
|
||||
println(newIntBuffer(1).element)
|
||||
println(newIntBuffer(1, 2, 3).length)
|
||||
}
|
170
lexers/testdata/scala.expected
vendored
Normal file
170
lexers/testdata/scala.expected
vendored
Normal file
@ -0,0 +1,170 @@
|
||||
[
|
||||
{"type":"Keyword","value":"object"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"NameClass","value":"abstractTypes"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"extends"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"NameClass","value":"Application"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Operator","value":"{"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Keyword","value":"abstract"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"class"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"NameClass","value":"Buffer"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Operator","value":"{"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Keyword","value":"type"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"KeywordType","value":"T"},
|
||||
{"type":"Operator","value":";"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"val"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"element"},
|
||||
{"type":"Keyword","value":":"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"KeywordType","value":"T"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Operator","value":"}"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Keyword","value":"abstract"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"class"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"NameClass","value":"SeqBuffer"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Operator","value":"{"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Keyword","value":"type"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"KeywordType","value":"T"},
|
||||
{"type":"Operator","value":";"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"val"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"element"},
|
||||
{"type":"Keyword","value":":"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"KeywordType","value":"Seq"},
|
||||
{"type":"Text","value":""},
|
||||
{"type":"Operator","value":"["},
|
||||
{"type":"KeywordType","value":"T"},
|
||||
{"type":"Operator","value":"];"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"def"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"length"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"="},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"element"},
|
||||
{"type":"Operator","value":"."},
|
||||
{"type":"Name","value":"length"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Operator","value":"}"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Keyword","value":"def"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"newIntBuffer"},
|
||||
{"type":"Operator","value":"("},
|
||||
{"type":"Name","value":"el"},
|
||||
{"type":"Keyword","value":":"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"KeywordType","value":"Int"},
|
||||
{"type":"Operator","value":")"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"="},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"new"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"NameClass","value":"Buffer"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Operator","value":"{"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Keyword","value":"type"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"KeywordType","value":"T"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Operator","value":"="},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"NameClass","value":"Int"},
|
||||
{"type":"Operator","value":";"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"val"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"element"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"="},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"el"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Operator","value":"}"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Keyword","value":"def"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"newIntBuffer"},
|
||||
{"type":"Operator","value":"("},
|
||||
{"type":"Name","value":"el"},
|
||||
{"type":"Keyword","value":":"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"KeywordType","value":"Int*"},
|
||||
{"type":"Operator","value":")"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"="},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"new"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"NameClass","value":"SeqBuffer"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Operator","value":"{"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Keyword","value":"type"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"KeywordType","value":"T"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Operator","value":"="},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"NameClass","value":"Int"},
|
||||
{"type":"Operator","value":";"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"val"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"element"},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Keyword","value":"="},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"Name","value":"el"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Operator","value":"}"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Name","value":"println"},
|
||||
{"type":"Operator","value":"("},
|
||||
{"type":"Name","value":"newIntBuffer"},
|
||||
{"type":"Operator","value":"("},
|
||||
{"type":"LiteralNumberInteger","value":"1"},
|
||||
{"type":"Operator","value":")."},
|
||||
{"type":"Name","value":"element"},
|
||||
{"type":"Operator","value":")"},
|
||||
{"type":"Text","value":"\n "},
|
||||
{"type":"Name","value":"println"},
|
||||
{"type":"Operator","value":"("},
|
||||
{"type":"Name","value":"newIntBuffer"},
|
||||
{"type":"Operator","value":"("},
|
||||
{"type":"LiteralNumberInteger","value":"1"},
|
||||
{"type":"Operator","value":","},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"LiteralNumberInteger","value":"2"},
|
||||
{"type":"Operator","value":","},
|
||||
{"type":"Text","value":" "},
|
||||
{"type":"LiteralNumberInteger","value":"3"},
|
||||
{"type":"Operator","value":")."},
|
||||
{"type":"Name","value":"length"},
|
||||
{"type":"Operator","value":")"},
|
||||
{"type":"Text","value":"\n"},
|
||||
{"type":"Operator","value":"}"},
|
||||
{"type":"Text","value":"\n"}
|
||||
]
|
Loading…
x
Reference in New Issue
Block a user