db.sqlite.errors: simplify implementation
parent
2da68f908b
commit
ca19a01c1b
|
@ -7,20 +7,13 @@ IN: db.sqlite.errors
|
||||||
TUPLE: unparsed-sqlite-error error ;
|
TUPLE: unparsed-sqlite-error error ;
|
||||||
C: <unparsed-sqlite-error> unparsed-sqlite-error
|
C: <unparsed-sqlite-error> unparsed-sqlite-error
|
||||||
|
|
||||||
SINGLETONS: table-exists table-missing ;
|
|
||||||
|
|
||||||
: sqlite-table-error ( table message -- error )
|
|
||||||
{
|
|
||||||
{ table-exists [ <sql-table-exists> ] }
|
|
||||||
} case ;
|
|
||||||
|
|
||||||
EBNF: parse-sqlite-sql-error
|
EBNF: parse-sqlite-sql-error
|
||||||
|
|
||||||
TableMessage = " already exists" => [[ table-exists ]]
|
AlreadyExists = " already exists"
|
||||||
|
|
||||||
SqliteError =
|
SqliteError =
|
||||||
"table " (!(TableMessage).)+:table TableMessage:message
|
"table " (!(AlreadyExists).)+:table AlreadyExists
|
||||||
=> [[ table >string message sqlite-table-error ]]
|
=> [[ table >string <sql-table-exists> ]]
|
||||||
| "no such table: " .+:table
|
| "no such table: " .+:table
|
||||||
=> [[ table >string <sql-table-missing> ]]
|
=> [[ table >string <sql-table-missing> ]]
|
||||||
| .*:error
|
| .*:error
|
||||||
|
|
Loading…
Reference in New Issue