Documentation
¶
Overview ¶
Package grate opens tabular data files (such as spreadsheets and delimited plaintext files) and allows programmatic access to the data contents in a consistent interface.
Index ¶
Constants ¶
const ( // ContinueColumnMerged marks a continuation column within a merged cell. ContinueColumnMerged = "→" // EndColumnMerged marks the last column of a merged cell. EndColumnMerged = "⇥" // ContinueRowMerged marks a continuation row within a merged cell. ContinueRowMerged = "↓" // EndRowMerged marks the last row of a merged cell. EndRowMerged = "⤓" )
Variables ¶
var ( // Debug should be set to true to expose detailed logging. Debug bool = (loglevel == "debug") )
var ErrInvalidScanType = errors.New("grate: Scan only supports *bool, *int, *float64, *string, *time.Time arguments")
ErrInvalidScanType is returned by Scan for invalid arguments.
var ErrNotInFormat = errors.New("grate: file is not in this format")
ErrNotInFormat is used to auto-detect file types using the defined OpenFunc It is returned by OpenFunc when the code does not detect correct file formats.
var ErrUnknownFormat = errors.New("grate: file format is not known/supported")
ErrUnknownFormat is used when grate does not know how to open a file format.
Functions ¶
Types ¶
type Collection ¶
type Collection interface {
// Next advances to the next record of content.
// It MUST be called prior to any Scan().
Next() bool
// Strings extracts values from the current record into a list of strings.
Strings() []string
// Types extracts the data types from the current record into a list.
// options: "boolean", "integer", "float", "string", "date",
// and special cases: "blank", "hyperlink" which are string types
Types() []string
// Formats extracts the format codes for the current record into a list.
Formats() []string
// Scan extracts values from the current record into the provided arguments
// Arguments must be pointers to one of 5 supported types:
// bool, int64, float64, string, or time.Time
// If invalid, returns ErrInvalidScanType
Scan(args ...interface{}) error
// IsEmpty returns true if there are no data values.
IsEmpty() bool
// Err returns the last error that occured.
Err() error
}
Collection represents an iterable collection of records.
type OpenFunc ¶
OpenFunc defines a Source's instantiation function. It should return ErrNotInFormat immediately if filename is not of the correct file type.
type Source ¶
type Source interface {
// List the individual data tables within this source.
List() ([]string, error)
// Get a Collection from the source by name.
Get(name string) (Collection, error)
// Close the source and discard memory.
Close() error
}
Source represents a set of data collections.
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
grate2tsv
command
Command grate2tsv is a highly parallel tabular data extraction tool.
|
Command grate2tsv is a highly parallel tabular data extraction tool. |
|
grater
command
Command grater extracts contents of the tabular files to stdout.
|
Command grater extracts contents of the tabular files to stdout. |
|
Package xls implements the Microsoft Excel Binary File Format (.xls) Structure.
|
Package xls implements the Microsoft Excel Binary File Format (.xls) Structure. |
|
cfb
Package cfb implements the Microsoft Compound File Binary File Format.
|
Package cfb implements the Microsoft Compound File Binary File Format. |
|
crypto
Package crypto implements excel encryption algorithms from the MS-OFFCRYPTO design specs.
|
Package crypto implements excel encryption algorithms from the MS-OFFCRYPTO design specs. |