Crate rhit[][src]

Re-exports

pub use crate::*;
pub use crossterm;

Modules

__std_iter

Composable external iteration.

args
cursor

A module to work with the terminal cursor

io

Traits, helpers, and type definitions for core I/O functionality.

md
structs

The concrete iterator types.

traits

Traits helpful for using certain Itertools methods in generic contexts.

Macros

anyhow

Construct an ad-hoc error from a string or existing non-anyhow error value.

bail

Return early with an error.

ensure

Return early with an error if a condition is not satisfied.

execute

Executes one or more command(s).

format_err

Construct an ad-hoc error from a string or existing non-anyhow error value.

iproduct

Create an iterator over the “cartesian product” of iterators.

izip

Create an iterator running multiple iterators in lockstep.

queue

Queues one or more command(s) for further execution.

Structs

Bar
Batching

A “meta iterator adaptor”. Its closure receives a reference to the iterator and may pick off as many elements as it likes, to produce the next iterator element.

BufReader

The BufReader<R> struct adds buffering to any reader.

Chain

Iterator of a chain of source errors.

Chunk

An iterator for the elements in a single chunk.

Chunks

An iterator that yields the Chunk iterators.

CircularTupleWindows

An iterator over all windows,wrapping back to the first elements when the window would otherwise exceed the length of the iterator, producing tuples of a specific size.

Clear

A command that clears the terminal screen buffer.

Combinations

An iterator to iterate through all the k-length combinations in an iterator.

CombinationsWithReplacement

An iterator to iterate through all the n-length combinations in an iterator, with replacement.

ConsTuples

An iterator that maps an iterator of tuples like ((A, B), C) to an iterator of (A, B, C).

Date

a not precise date, only valid in the context of the local set of log files. It's implicitely in the timezone of the log files (assuming all the files have the same one). As nginx didn't exist before JC, a u16 is good enough for the year.

DisableMouseCapture

A command that disables mouse event capturing.

EnableMouseCapture

A command that enables mouse event capturing.

EnterAlternateScreen

A command that switches to alternate screen.

Error

The Error type, a wrapper around a dynamic error type.

ExactlyOneError

Iterator returned for the error case of IterTools::exactly_one() This iterator yields exactly the same elements as the input iterator.

Fields
File

A reference to an open file on the filesystem.

FilterMapOk

An iterator adapter to filter and apply a transformation on values within a nested Result::Ok.

FilterOk

An iterator adapter to filter values within a nested Result::Ok.

Format

Format all iterator elements lazily, separated by sep.

FormatWith

Format all iterator elements lazily, separated by sep.

Group

An iterator for the elements in a single group.

GroupBy

GroupBy is the storage for the lazy grouping operation.

GroupingMap

GroupingMap is an intermediate struct for efficient group-and-fold operations. It groups elements by their key and at the same time fold each group using some aggregating operation.

Groups

An iterator that yields the Group iterators.

Histogram
Interleave

An iterator adaptor that alternates elements from two iterators until both run out.

InterleaveShortest

An iterator adaptor that alternates elements from the two iterators until one of them runs out.

IntersperseWith

An iterator adaptor to insert a particular value created by a function between each element of the adapted iterator.

IntoChunks

ChunkLazy is the storage for a lazy chunking operation.

IpFilter
Iterate

An iterator that infinitely applies function to value and yields results.

KMergeBy

An iterator adaptor that merges an abitrary number of base iterators according to an ordering function.

LeaveAlternateScreen

A command that switches back to the main screen.

LineGroup

A non empty group of lines, with a common characteristic, for stats

LogBase
LogFile
LogLine

A line in the access log, describing a hit.

MadSkin

A skin defining how a parsed mardkown appears on the terminal (fg and bg colors, bold, italic, underline, etc.)

MergeBy

An iterator adaptor that merges the two base iterators in ascending order. If both base iterators are sorted (ascending), the result is sorted.

MergeJoinBy

An iterator adaptor that merge-joins items from the two base iterators in ascending order.

MethodFilter

A filter for HTTP methods

MultiPeek

See multipeek() for more information.

MultiProduct

An iterator adaptor that iterates over the cartesian product of multiple iterators of type I.

PadUsing

An iterator adaptor that pads a sequence to a minimum length by filling missing elements using a closure.

Path

A slice of a path (akin to str).

PathBuf

An owned, mutable path (akin to String).

PeekNth

See peek_nth() for more information.

PeekingTakeWhile

An iterator adaptor that takes items while a closure returns true.

Permutations

An iterator adaptor that iterates through all the k-permutations of the elements from an iterator.

Positions

An iterator adapter to get the positions of each element that matches a predicate.

Powerset

An iterator to iterate through the powerset of the elements from an iterator.

Print

A command that prints the given displayable type.

PrintStyledContent

A command that prints styled content.

ProcessResults

An iterator that produces only the T values as long as the inner iterator produces Ok(T).

Product

An iterator adaptor that iterates over the cartesian product of the element sets of two iterators I and J.

ProgressBar

A pixel precise horizontal bar

PutBack

An iterator adaptor that allows putting back a single item to the front of the iterator.

PutBackN

An iterator adaptor that allows putting multiple items in front of the iterator.

Ranger
RcIter

A wrapper for Rc<RefCell<I>>, that implements the Iterator trait.

Regex

A compiled regular expression for matching Unicode strings.

RepeatCallDeprecated

See repeat_call for more information.

RepeatN

An iterator that produces n repetitions of an element.

StatusFilter

A filter for status, allowing classes, ranges and exclusions Examples: 4xx 4xx,503 402-417,503 4xx,!404

StepDeprecated

An iterator adaptor that steps a number elements in the base iterator for each iteration.

StrFilter

a filter for strings

TakeWhileRef

An iterator adaptor that borrows from a Clone-able iterator to only pick off elements while the predicate returns true.

Tee

One half of an iterator pair where both return the same elements.

Trend
TrendComputer
TupleBuffer

An iterator over a incomplete tuple.

TupleCombinations

An iterator to iterate through all combinations in a Clone-able iterator that produces tuples of a specific size.

TupleWindows

An iterator over all contiguous windows that produces tuples of a specific size.

Tuples

An iterator that groups the items in tuples of a specific size.

Unfold

See unfold for more information.

Unique

An iterator adapter to filter out duplicate elements.

UniqueBy

An iterator adapter to filter out duplicate elements.

Update

An iterator adapter to apply a mutating function to each element before yielding it.

WhileSome

An iterator adaptor that filters Option<A> iterator elements and produces A. Stops on the first None encountered.

WithPosition

An iterator adaptor that wraps each element in an Position.

Zip

See multizip for more information.

ZipEq

An iterator which iterates two other iterators simultaneously

ZipLongest

An iterator which iterates two other iterators simultaneously

Enums

ClearType

Different ways to clear the terminal buffer.

Color

Represents a color.

DateFilter
DateParseError
Diff

A type returned by the diff_with function.

Either

The enum Either with variants Left and Right is a general purpose sum type with two cases.

EitherOrBoth

Value that either holds a single A or B, or both.

Field

one of the tables that can be displayed

FoldWhile

An enum used for controlling the execution of .fold_while().

IpFilterParseError
Key
LogParseError
Method

An HTTP method

MinMaxResult

MinMaxResult is an enum returned by minmax. See Itertools::minmax() for more detail.

Position

A value yielded by WithPosition. Indicates the position of this element in the iterator results.

StatusFilterParseError
StrFilterParseError

Statics

ALL_TABLES
DEFAULT_TABLES

Traits

BufRead

A BufRead is a type of Reader which has an internal buffer, allowing it to perform extra ways of reading.

Context

Provides the context method for Result.

DateIndexed

A trait for structs which hold the index of a date FIXME this thing is ridiculous, I need somebody knowing rust to fix it

FromStr

Parse a value from a string

Itertools

An Iterator blanket implementation that provides extra adaptors and methods.

PeekingNext

An iterator that allows peeking at an element before deciding to accept it.

QueueableCommand

An interface for types that can queue commands for further execution.

Read

The Read trait allows for reading bytes from a source.

Write

A trait for objects which are byte-oriented sinks.

Functions

all

Test whether the predicate holds for all elements in the iterable.

any

Test whether the predicate holds for any elements in the iterable.

apply

apply all filters found in args and print info about the operations

assert_equal

Assert that two iterables produce equal sequences, with the same semantics as equal(a, b).

chain

Create an iterator that first iterates i and then j.

cloned

Create an iterator that clones each element from &T to T

concat

Combine all an iterator's elements into one element by using Extend.

cons_tuples

Create an iterator that maps for example iterators of ((A, B), C) to (A, B, C).

diff_with

Compares every element yielded by both i and j with the given function in lock-step and returns a Diff which describes how j differs from i.

enumerate

Iterate iterable with a running index.

equal

Return true if both iterables produce equal sequences (elements pairwise equal and sequences of the same length), false otherwise.

fold

Perform a fold operation over the iterable.

histo_line

will panic if counts aren't consistent with the max or if the max is 0. Use full height only if you don't need to keep a margin with le line above

interleave

Create an iterator that interleaves elements in i and j.

iterate

Creates a new iterator that infinitely applies function to value and yields results.

join

Combine all iterator elements into one String, seperated by sep.

kmerge

Create an iterator that merges elements of the contained iterators using the ordering function.

kmerge_by

Create an iterator that merges elements of the contained iterators.

max

Return the maximum value of the iterable.

merge

Create an iterator that merges elements in i and j.

merge_join_by

Return an iterator adaptor that merge-joins items from the two base iterators in ascending order.

min

Return the minimum value of the iterable.

multipeek

An iterator adaptor that allows the user to peek at multiple .next() values without advancing the base iterator.

multizip

An iterator that generalizes .zip() and allows running multiple iterators in lockstep.

partition

Partition a sequence using predicate pred so that elements that map to true are placed before elements which map to false.

peek_nth

A drop-in replacement for std::iter::Peekable which adds a peek_nth method allowing the user to peek at a value several iterations forward without advancing the base iterator.

process_results

“Lift” a function of the values of an iterator so that it can process an iterator of Result values instead.

put_back

Create an iterator where you can put back a single item

put_back_n

Create an iterator where you can put back multiple values to the front of the iteration.

rciter

Return an iterator inside a Rc<RefCell<_>> wrapper.

repeat_callDeprecated

An iterator source that produces elements indefinitely by calling a given closure.

repeat_n

Create an iterator that produces n repetitions of element.

rev

Iterate iterable in reverse.

run
sorted

Sort all iterator elements into a new iterator in ascending order.

style

Creates a StyledContent.

unfold

Creates a new unfold source with the specified closure as the "iterator function" and an initial state to eventually pass to the closure

zip

Iterate i and j in lock step.

zip_eq

Iterate i and j in lock step.

Type Definitions

Coalesce

An iterator adaptor that may join together adjacent elements.

Dedup

An iterator adaptor that removes repeated duplicates.

DedupBy

An iterator adaptor that removes repeated duplicates, determining equality using a comparison function.

DedupByWithCount

An iterator adaptor that removes repeated duplicates, while keeping a count of how many repeated elements were present. This will determine equality using a comparison function.

DedupWithCount

An iterator adaptor that removes repeated duplicates, while keeping a count of how many repeated elements were present.

GroupingMapBy

GroupingMapBy is an intermediate struct for efficient group-and-fold operations.

Intersperse

An iterator adaptor to insert a particular value between each element of the adapted iterator.

KMerge

An iterator adaptor that merges an abitrary number of base iterators in ascending order. If all base iterators are sorted (ascending), the result is sorted.

MapInto

An iterator adapter to apply Into conversion to each element.

MapOk

An iterator adapter to apply a transformation within a nested Result::Ok.

MapResultsDeprecated

See MapOk.

Merge

An iterator adaptor that merges the two base iterators in ascending order. If both base iterators are sorted (ascending), the result is sorted.

Result

Result<T, Error>