carp checkers: add carp checker and make it work
This commit is contained in:
1
Pond.package/CarpCheckParser.class/README.md
Normal file
1
Pond.package/CarpCheckParser.class/README.md
Normal file
@@ -0,0 +1 @@
|
||||
I’m a parser for the results of a Carp check.
|
7
Pond.package/CarpCheckParser.class/instance/parse..st
Normal file
7
Pond.package/CarpCheckParser.class/instance/parse..st
Normal file
@@ -0,0 +1,7 @@
|
||||
parsing
|
||||
parse: aStream
|
||||
| split contents |
|
||||
contents := aStream upToEnd.
|
||||
contents ifEmpty: [ ^ OrderedCollection new ].
|
||||
split := contents splitOn: '\n'.
|
||||
^ split collect: [ :s | self parseLine: s ]
|
13
Pond.package/CarpCheckParser.class/instance/parseLine..st
Normal file
13
Pond.package/CarpCheckParser.class/instance/parseLine..st
Normal file
@@ -0,0 +1,13 @@
|
||||
parsing
|
||||
parseLine: aLine
|
||||
| split res |
|
||||
split := aLine splitOn: ':'.
|
||||
split size == 3 ifFalse: [
|
||||
^ CarpParseError new message: 'unparseable checker line: "' , aLine , '"'].
|
||||
res := CarpParseError new
|
||||
file: (split at: 1);
|
||||
line: (split at: 2) asNumber.
|
||||
split := (split at: 3) splitOn: ' '.
|
||||
^ res
|
||||
column: (split at: 1) asNumber;
|
||||
message: (' ' join: split allButFirst)
|
11
Pond.package/CarpCheckParser.class/properties.json
Normal file
11
Pond.package/CarpCheckParser.class/properties.json
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"commentStamp" : "VeitHeller 12/16/2019 11:18",
|
||||
"super" : "Object",
|
||||
"category" : "Pond",
|
||||
"classinstvars" : [ ],
|
||||
"pools" : [ ],
|
||||
"classvars" : [ ],
|
||||
"instvars" : [ ],
|
||||
"name" : "CarpCheckParser",
|
||||
"type" : "normal"
|
||||
}
|
Reference in New Issue
Block a user