[][src]Module agnes::join

Traits and implementations to handle joining or merging two DataViews.

Joining DataViews involves finding the rows in each DataView which satisfy a specific join predicate (much like a JOIN in a SQL database). Merging refers to combining fields of two DataView objects with the same number of rows into a single DataView.

Structs

Equal

Predicate for equality joins (left == right).

GreaterThan

Predicate for greater-than joins (left > right).

GreaterThanEqual

Predicate for greater-than-equal joins (left >= right).

Join

Marker struct describing a join. LLabel is the label of the left-hand side, RLabel is the label of the right-hand side, and Predicate represents the type of join predicate (equal join, greater-than join, less-than join, etc.).

LessThan

Predicate for less-than joins (left < right).

LessThanEqual

Predicate for less-than-equal joins (left <= right).

Enums

PredAction

The action to take in the sort-merge join algorithm as a result of the selected predicate.

Traits

JoinIntoStore

A trait for augmenting type Store (a DataStore) with fields from this ViewFrameCons as labeled by Labels.

Merge

Trait for merging another DataView with self. RLabels and RFrames are the type parameters of the DataView being merged onto self.

Offset

A trait for applying a frame index offset O.

Predicate

A trait for describing the course of action in a sort-merge join. This trait differentiates the actions that are taken during a sort-merge join based on the implementing type.

SortMergeJoin

A trait for merging a DataView with the current object using specified Join. RLabels and RFrames are the Labels and Frames type parameters for the DataView to merge.

UpdateFrameIndex

Trait for updating the frame index of a ViewFrameCons by a specified Offset.

UpdateFrameIndexMarker

Trait for updating the frame index of a FrameLookupCons by a specified Offset.