carp checkers: add carp checker and make it work

This commit is contained in:
2019-12-16 12:03:18 +01:00
parent 5763bfc040
commit 3254a9e81d
32 changed files with 145 additions and 11 deletions

View File

@@ -0,0 +1 @@
Im a parser for the results of a Carp check.

View 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 ]

View 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)

View File

@@ -0,0 +1,11 @@
{
"commentStamp" : "VeitHeller 12/16/2019 11:18",
"super" : "Object",
"category" : "Pond",
"classinstvars" : [ ],
"pools" : [ ],
"classvars" : [ ],
"instvars" : [ ],
"name" : "CarpCheckParser",
"type" : "normal"
}