Versions in this module Expand all Collapse all v0 v0.1.0 May 9, 2023 Changes in this version + var Now = time.Now + var SpacesEntryFieldSplitter = EntryFieldSplitterFunc(func(v string, limit int) ([]string, error) { ... }) + type Entry struct + Fields []string + Raw string + Time time.Time + func (e *Entry) Eval(prg cel.Program) (ref.Val, *cel.EvalDetails, error) + type EntryFieldSplitterFunc func(v string, limit int) ([]string, error) + type EntryScanner interface + Entry func() *Entry + EntryOffset func() int + Err func() error + Scan func() bool + func NewCSVEntryScanner(r *csv.Reader, timeField int, timeParser TimeParserFunc) EntryScanner + func NewGenericEntryScanner(s *bufio.Scanner, fieldSplitter EntryFieldSplitterFunc, fieldsLimit int, ...) EntryScanner + type EntryWriter interface + EntriesWritten func() int64 + WriteEntry func(e *Entry) error + func NewDiscardEntryWriter() EntryWriter + func NewEntryFieldWriter(w io.Writer, field int) EntryWriter + func NewEntryWriter(w io.Writer) EntryWriter + type PolicySelection struct + func NewPolicySelection(spec *PolicySpec, evictions EntryWriter) *PolicySelection + func (p *PolicySelection) Entries() []*Entry + func (p *PolicySelection) EvaluateEntry(e *Entry) (bool, error) + type PolicySelectionSet struct + func NewPolicySelectionSet(specs []*PolicySpec, evictions EntryWriter) *PolicySelectionSet + func (p *PolicySelectionSet) Entries() []*Entry + func (p *PolicySelectionSet) EvaluateEntry(e *Entry) (bool, error) + type PolicySpec struct + func ParsePolicySpecString(defaultName string, raw string) (*PolicySpec, error) + func (ps *PolicySpec) MatchEntry(e *Entry) (bool, error) + func (ps *PolicySpec) String() string + type TimeParserFunc func(v string) (time.Time, error)