penny-lib-0.2.0.0: Extensible double-entry accounting system - library

Safe HaskellSafe-Infered

Penny.Cabin.Interface

Description

An interface for other Penny components to use. A report is anything that is a Report.

Documentation

type ReportFuncSource

Arguments

 = Runtime

Information only known at runtime, such as the environment. Does not include any information that is derived from parsing the command line.

-> CaseSensitive

Result from previous parses indicating whether the user desires case sensitivity (this may have been changed in the filtering options)

-> (CaseSensitive -> Text -> Exceptional Text (Text -> Bool))

Result from previous parsers indicating the matcher factory the user wishes to use

-> [Box LibertyMeta]

Postings that will be included in the report

-> [PricePoint]

PricePoints to be included in the report

-> Exceptional Text Text

The exception type is a strict Text, containing the error message. The success type is a lazy Text, containing the resulting report.

data Report Source

Constructors

Report 

Fields

help :: Text

A strict Text containing a help message.

name :: String

The name of the report

parseReport :: Parser ReportFunc

The parser must parse everything beginning with the first word after the name of the report (the parser does not parse the name of the report) up until, but not including, the first non-option word.