eat space before value & period expressions
This commit is contained in:
parent
eddcb6b92a
commit
27a6255404
10
hledger.hs
10
hledger.hs
@ -297,6 +297,7 @@ ledgertransactions = (ledgertransaction <?> "transaction") `manyTill` (newline <
|
|||||||
-- "automated entry"
|
-- "automated entry"
|
||||||
ledgermodifierentry = do
|
ledgermodifierentry = do
|
||||||
char '=' <?> "entry"
|
char '=' <?> "entry"
|
||||||
|
many spacenonewline
|
||||||
valueexpr <- restofline
|
valueexpr <- restofline
|
||||||
transactions <- ledgertransactions
|
transactions <- ledgertransactions
|
||||||
ledgernondatalines
|
ledgernondatalines
|
||||||
@ -304,6 +305,7 @@ ledgermodifierentry = do
|
|||||||
|
|
||||||
ledgerperiodicentry = do
|
ledgerperiodicentry = do
|
||||||
char '~' <?> "entry"
|
char '~' <?> "entry"
|
||||||
|
many spacenonewline
|
||||||
periodexpr <- restofline
|
periodexpr <- restofline
|
||||||
transactions <- ledgertransactions
|
transactions <- ledgertransactions
|
||||||
ledgernondatalines
|
ledgernondatalines
|
||||||
@ -350,7 +352,7 @@ spacenonewline = satisfy (\c -> c `elem` " \v\f\t")
|
|||||||
|
|
||||||
-- run tests
|
-- run tests
|
||||||
|
|
||||||
main = do
|
test = do
|
||||||
parseTest ledgertransaction sample_transaction
|
parseTest ledgertransaction sample_transaction
|
||||||
parseTest ledgertransaction sample_transaction2
|
parseTest ledgertransaction sample_transaction2
|
||||||
parseTest ledgerentry sample_entry
|
parseTest ledgerentry sample_entry
|
||||||
@ -369,6 +371,9 @@ main = do
|
|||||||
parseTest ledger sample_periodic_entry2
|
parseTest ledger sample_periodic_entry2
|
||||||
parseMyLedgerFile >>= showParseResult
|
parseMyLedgerFile >>= showParseResult
|
||||||
return ()
|
return ()
|
||||||
|
-- assert_ $ amount t1 == 8.50
|
||||||
|
-- putStrLn "ok"
|
||||||
|
-- where assert_ e = assert e return ()
|
||||||
|
|
||||||
parseMyLedgerFile = do
|
parseMyLedgerFile = do
|
||||||
fname <- ledgerFilePath
|
fname <- ledgerFilePath
|
||||||
@ -389,6 +394,3 @@ showParseResult r =
|
|||||||
print x
|
print x
|
||||||
putStr $ show $ length $ entries x; putStr " entries\n"
|
putStr $ show $ length $ entries x; putStr " entries\n"
|
||||||
|
|
||||||
-- assert_ $ amount t1 == 8.50
|
|
||||||
-- putStrLn "ok"
|
|
||||||
-- where assert_ e = assert e return ()
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user