# Hierarchy For All Packages

Package Hierarchies:

- cascading.flow.hadoop,
- cascading.flow.hadoop.planner.rule.assertion,
- cascading.flow.hadoop.planner.rule.expression,
- cascading.flow.hadoop.planner.rule.expressiongraph,
- cascading.flow.hadoop.planner.rule.partitioner,
- cascading.flow.hadoop.planner.rule.transformer,
- cascading.flow.hadoop.stream,
- cascading.flow.hadoop.util,
- cascading.flow.tez,
- cascading.flow.tez.planner,
- cascading.flow.tez.planner.rule.annotator,
- cascading.flow.tez.planner.rule.assertion,
- cascading.flow.tez.planner.rule.expression,
- cascading.flow.tez.planner.rule.expressiongraph,
- cascading.flow.tez.planner.rule.partitioner,
- cascading.flow.tez.planner.rule.transformer,
- cascading.flow.tez.stream.element,
- cascading.flow.tez.stream.graph,
- cascading.flow.tez.util,
- cascading.stats.hadoop,
- cascading.tap.hadoop,
- cascading.tuple.hadoop.util,
- cascading.tuple.tez.util

## Class Hierarchy

- java.lang.Object
  - org.apache.tez.runtime.api.AbstractLogicalIOProcessor (implements org.apache.tez.runtime.api.LogicalIOProcessor, org.apache.tez.runtime.api.LogicalIOProcessorFrameworkInterface)
    - cascading.flow.tez.FlowProcessor
  - cascading.flow.BaseFlow<Config> (implements cascading.flow.Flow<Config>, cascading.util.ProcessLogger)
    - cascading.flow.tez.Hadoop2TezFlow
  - cascading.flow.planner.BaseFlowStep<Config> (implements cascading.flow.FlowStep<Config>, cascading.util.ProcessLogger, java.io.Serializable)
    - cascading.flow.tez.Hadoop2TezFlowStep
  - cascading.flow.planner.rule.transformer.BoundaryElementFactory (implements cascading.flow.planner.iso.transformer.ElementFactory)
    - cascading.flow.tez.planner.Hadoop2TezPlanner.IntermediateBoundaryElementFactory
  - cascading.flow.tez.planner.rule.transformer.BoundaryElementFactory (implements cascading.flow.planner.iso.transformer.ElementFactory)
  - cascading.flow.hadoop.ConfigurationSetter (implements cascading.property.ConfigDef.Setter)
  - org.apache.hadoop.conf.Configured (implements org.apache.hadoop.conf.Configurable)
    - cascading.tuple.hadoop.util.DeserializerComparator<T> (implements org.apache.hadoop.io.RawComparator<T>)
      - cascading.tuple.hadoop.util.BaseTupleComparator (implements org.apache.hadoop.conf.Configurable)
        - cascading.tuple.hadoop.util.TupleComparator
          - cascading.tuple.hadoop.util.ReverseTupleComparator
      - cascading.tuple.hadoop.util.CoGroupingComparator
      - cascading.tuple.hadoop.util.GroupingComparator
      - cascading.tuple.hadoop.util.GroupingSortingComparator
        - cascading.tuple.hadoop.util.ReverseGroupingSortingComparator
      - cascading.tuple.hadoop.util.IndexTupleCoGroupingComparator (implements org.apache.hadoop.conf.Configurable)
  - cascading.stats.CounterCache<Config,JobStatus,Counters>
    - cascading.stats.hadoop.HadoopCounterCache<JobStatus,Counters>
  - cascading.tuple.hadoop.util.DelegatingTupleElementComparator (implements java.util.Comparator<T>, cascading.tuple.StreamComparator<T>)
  - cascading.flow.stream.duct.Duct<Incoming,Outgoing>
    - cascading.flow.stream.duct.Gate<Incoming,Outgoing>
      - cascading.flow.stream.element.SpliceGate<Incoming,Outgoing> (implements cascading.flow.stream.duct.Collapsing, cascading.flow.stream.element.ElementDuct)
        - cascading.flow.stream.element.GroupingSpliceGate (implements cascading.flow.stream.duct.Window)
          - cascading.flow.hadoop.stream.HadoopGroupGate
            - cascading.flow.tez.stream.element.TezGroupGate (implements cascading.flow.stream.element.InputSource)
              - cascading.flow.tez.stream.element.TezCoGroupGate
              - cascading.flow.tez.stream.element.TezGroupByGate
          - cascading.flow.stream.element.MemorySpliceGate
            - cascading.flow.stream.element.MemoryHashJoinGate
              - cascading.flow.hadoop.stream.HadoopMemoryJoinGate
        - cascading.flow.tez.stream.element.TezMergeGate (implements cascading.flow.stream.element.InputSource)
    - cascading.flow.stream.duct.Stage<Incoming,Outgoing>
      - cascading.flow.stream.element.BoundaryStage<Incoming,Outgoing> (implements cascading.flow.stream.element.ElementDuct)
        - cascading.flow.tez.stream.element.TezBoundaryStage (implements cascading.flow.stream.element.InputSource)
      - cascading.flow.stream.element.ElementStage<Incoming,Outgoing> (implements cascading.flow.stream.element.ElementDuct)
        - cascading.flow.stream.element.SinkStage
          - cascading.flow.tez.stream.element.TezSinkStage
        - cascading.flow.stream.element.SourceStage (implements java.util.concurrent.Callable<V>, cascading.flow.stream.element.InputSource)
          - cascading.flow.tez.stream.element.TezSourceStage
  - cascading.flow.planner.iso.expression.ExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.AccumulatedSourceExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.BottomUpConsecutiveBoundariesExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.BottomUpConsecutiveBoundariesTriangleExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.BottomUpNoSplitConsecutiveBoundariesExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.BoundarySelJoinCoGroupExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.ConsecutiveGroupOrMergeExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.GroupMergeToTapBoundaryExpressionGraph
    - cascading.flow.hadoop.planner.rule.expressiongraph.MalformedJoinExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.NoGroupMergeBoundaryTapExpressionGraph
    - cascading.flow.hadoop.planner.rule.expressiongraph.NoGroupTapExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.NoSpliceTapExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.StreamedAccumulatedBoundariesExpressionGraph
    - cascading.flow.hadoop.planner.rule.expression.StreamedAccumulatedTapsExpressionGraph
    - cascading.flow.hadoop.planner.rule.expression.StreamedAccumulatedTapsHashJoinExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.StreamedOnlySourcesExpressionGraph
    - cascading.flow.hadoop.planner.rule.expressiongraph.StreamedOnlySourcesExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.StreamedSelfJoinSourcesExpressionGraph
    - cascading.flow.hadoop.planner.rule.expressiongraph.StreamedSelfJoinSourcesExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.TopDownConsecutiveBoundariesExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.TopDownSplitBoundariesExpressionGraph
    - cascading.flow.tez.planner.rule.expressiongraph.TopDownSplitJoinBoundariesExpressionGraph
  - cascading.flow.hadoop.FailOnMissingSuccessFlowListener (implements cascading.flow.FlowListener)
  - cascading.flow.hadoop.util.FalseCollection (implements java.util.Collection<E>, cascading.flow.hadoop.util.ResettableCollection<V>)
  - cascading.flow.FlowConnector
    - cascading.flow.tez.Hadoop2TezFlowConnector
  - cascading.flow.planner.FlowPlanner<F,Config>
    - cascading.flow.tez.planner.Hadoop2TezPlanner
  - cascading.flow.FlowProcess<Config>
    - cascading.flow.tez.Hadoop2TezFlowProcess (implements cascading.flow.hadoop.MapRed)
  - cascading.flow.planner.FlowStepJob<Config> (implements java.util.concurrent.Callable<V>)
    - cascading.flow.tez.planner.Hadoop2TezFlowStepJob
  - cascading.flow.planner.iso.assertion.GraphAssert<E>
    - cascading.flow.planner.rule.RuleAssert (implements cascading.flow.planner.rule.Rule)
      - cascading.flow.tez.planner.rule.assertion.DualStreamedAccumulatedMergeNodeAssert
      - cascading.flow.hadoop.planner.rule.assertion.DualStreamedAccumulatedMergePipelineAssert
      - cascading.flow.tez.planner.rule.assertion.NoHashJoinAssert
  - cascading.flow.planner.iso.transformer.GraphTransformer<In,Out>
    - cascading.flow.planner.rule.RuleTransformer (implements cascading.flow.planner.rule.Rule)
      - cascading.flow.planner.rule.transformer.RuleAnnotationTransformer
        - cascading.flow.tez.planner.rule.annotator.AccumulatedPostNodeAnnotator
      - cascading.flow.planner.rule.transformer.RuleInsertionTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceCheckpointTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceGroupBlockingHashJoinTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceGroupSplitHashJoinTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceGroupSplitSpliceTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceGroupSplitTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceHashJoinSameSourceTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceHashJoinToHashJoinTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceJoinSplitTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceSplitSplitToStreamedHashJoinTransformer
        - cascading.flow.tez.planner.rule.transformer.BoundaryBalanceSplitToStreamedHashJoinTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceCheckpointTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupBlockingHashJoinTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupGroupTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupMergeGroupTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupNonBlockingHashJoinTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupSplitJoinTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupSplitMergeGroupTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupSplitMergeTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupSplitTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceGroupSplitTriangleTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceHashJoinBlockingHashJoinTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceHashJoinSameSourceTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceNonSafePipeSplitTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceNonSafeSplitTransformer
        - cascading.flow.hadoop.planner.rule.transformer.TapBalanceSameSourceStreamedAccumulatedTransformer
      - cascading.flow.planner.rule.transformer.RuleRemoveBranchTransformer
        - cascading.flow.tez.planner.rule.transformer.RemoveMalformedHashJoinNodeTransformer
        - cascading.flow.hadoop.planner.rule.transformer.RemoveMalformedHashJoinPipelineTransformer
        - cascading.flow.hadoop.planner.rule.transformer.RemoveStreamedBranchTransformer
      - cascading.flow.planner.rule.transformer.RuleReplaceFactoryBasedTransformer
        - cascading.flow.hadoop.planner.rule.transformer.ReplaceAccumulateTapWithDistCacheTransformer
  - cascading.pipe.joiner.JoinerClosure
    - cascading.flow.hadoop.HadoopGroupByClosure
      - cascading.flow.hadoop.HadoopCoGroupClosure
        - cascading.flow.tez.TezCoGroupClosure
      - cascading.flow.tez.TezGroupByClosure
  - cascading.flow.hadoop.util.LazyCollection (implements java.util.Collection<E>, cascading.flow.hadoop.util.ResettableCollection<V>)
    - cascading.flow.hadoop.util.LazySpillableTupleCollection (implements cascading.tuple.collect.Spillable)
  - org.apache.tez.runtime.api.Reader
    - org.apache.tez.runtime.library.api.KeyValuesReader
      - cascading.flow.tez.util.SecondarySortKeyValuesReader
  - cascading.flow.planner.rule.RuleExpression
    - cascading.flow.hadoop.planner.rule.expression.AccumulatedTapOnHashJoinExpression
    - cascading.flow.tez.planner.rule.expression.BalanceCheckpointWithBoundaryExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceCheckpointWithTapExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupBlockingHashJoinExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupGroupExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupMergeGroupExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupNonBlockingHashJoinExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupSplitExpression
    - cascading.flow.tez.planner.rule.expression.BalanceGroupSplitHashJoinExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupSplitJoinExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupSplitMergeExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupSplitMergeGroupExpression
    - cascading.flow.tez.planner.rule.expression.BalanceGroupSplitNotTapExpression
    - cascading.flow.tez.planner.rule.expression.BalanceGroupSplitSpliceExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceGroupSplitTriangleExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceHashJoinBlockingHashJoinExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceHashJoinSameSourceExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceHashJoinToHashJoinExpression
    - cascading.flow.tez.planner.rule.expressiongraph.BalanceJoinSplitExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceNonSafePipeSplitExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceNonSafeSplitExpression
    - cascading.flow.hadoop.planner.rule.expression.BalanceSameSourceStreamedAccumulatedExpression
    - cascading.flow.tez.planner.rule.expression.BalanceSplitSplitToStreamedHashJoinExpression
    - cascading.flow.tez.planner.rule.expression.BalanceSplitToStreamedHashJoinExpression
    - cascading.flow.hadoop.planner.rule.expression.ConsecutiveTapsPartitionExpression
    - cascading.flow.hadoop.planner.rule.expression.DualStreamedAccumulatedExpression
    - cascading.flow.hadoop.planner.rule.expression.GroupTapPartitionExpression
    - cascading.flow.hadoop.planner.rule.expression.StreamedAccumulatedTapsHashJoinPipelinePartitionExpression
    - cascading.flow.hadoop.planner.rule.expression.StreamedAccumulatedTapsPipelinePartitionExpression
    - cascading.flow.hadoop.planner.rule.expression.StreamedOnlySourcesPipelinePartitionExpression
    - cascading.flow.hadoop.planner.rule.expression.StreamedSelfJoinSourcesPipelinePartitionExpression
    - cascading.flow.hadoop.planner.rule.expression.TapGroupTapPartitionExpression
  - cascading.flow.planner.rule.RulePartitioner (implements cascading.flow.planner.rule.Rule)
    - cascading.flow.planner.rule.partitioner.ExpressionRulePartitioner
      - cascading.flow.tez.planner.rule.partitioner.BottomUpBoundariesNodePartitioner
      - cascading.flow.tez.planner.rule.partitioner.BottomUpJoinedBoundariesNodePartitioner
      - cascading.flow.tez.planner.rule.partitioner.BottomUpJoinedBoundariesTriangleNodePartitioner
      - cascading.flow.tez.planner.rule.partitioner.ConsecutiveGroupOrMergesNodePartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.ConsecutiveTapsNodePartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.ConsecutiveTapsStepPartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.GroupTapNodePartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.MultiTapGroupNodePartitioner
      - cascading.flow.tez.planner.rule.partitioner.StreamedAccumulatedBoundariesNodeRePartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.StreamedAccumulatedTapsHashJoinPipelinePartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.StreamedAccumulatedTapsPipelinePartitioner
      - cascading.flow.tez.planner.rule.partitioner.StreamedOnlySourcesNodeRePartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.StreamedOnlySourcesPipelinePartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.StreamedSelfJoinSourcesPipelinePartitioner
      - cascading.flow.hadoop.planner.rule.partitioner.TapGroupTapStepPartitioner
      - cascading.flow.tez.planner.rule.partitioner.TopDownBoundariesNodePartitioner
      - cascading.flow.tez.planner.rule.partitioner.TopDownSplitBoundariesNodePartitioner
      - cascading.flow.planner.rule.partitioner.UniquePathRulePartitioner
        - cascading.flow.tez.planner.rule.partitioner.SplitJoinBoundariesNodeRePartitioner
  - cascading.flow.planner.rule.RuleRegistry
    - cascading.flow.tez.planner.HashJoinHadoop2TezRuleRegistry
    - cascading.flow.tez.planner.NoHashJoinHadoop2TezRuleRegistry
  - cascading.flow.stream.graph.StreamGraph
    - cascading.flow.stream.graph.NodeStreamGraph
      - cascading.flow.tez.stream.graph.Hadoop2TezStreamGraph
  - cascading.tap.Tap<Config,Input,Output> (implements cascading.flow.FlowElement, cascading.flow.planner.ScopedElement, java.io.Serializable, cascading.util.Traceable)
    - cascading.tap.DecoratorTap<MetaInfo,Config,Input,Output>
      - cascading.tap.hadoop.BaseDistCacheTap
        - cascading.tap.hadoop.DistCacheTap
  - cascading.flow.tez.util.TezUtil
  - cascading.flow.hadoop.util.TimedIterator<V> (implements cascading.util.CloseableIterator<V>)
  - cascading.tuple.hadoop.util.TupleElementComparator (implements java.util.Comparator<T>, cascading.tuple.StreamComparator<T>)
  - cascading.tuple.hadoop.util.TupleElementStreamComparator (implements java.util.Comparator<T>, cascading.tuple.StreamComparator<T>)
  - cascading.tuple.util.TupleHasher (implements java.io.Serializable)
    - cascading.tuple.hadoop.util.HasherPartitioner (implements org.apache.hadoop.conf.Configurable)
      - cascading.tuple.tez.util.CoGroupingPartitioner (implements org.apache.tez.runtime.library.api.Partitioner)
      - cascading.tuple.tez.util.GroupingSortingPartitioner (implements org.apache.tez.runtime.library.api.Partitioner)
      - cascading.tuple.tez.util.TuplePartitioner (implements org.apache.tez.runtime.library.api.Partitioner)
  - cascading.tuple.hadoop.util.TypedTupleElementComparator (implements java.util.Comparator<T>, cascading.tuple.StreamComparator<T>)
  - cascading.tuple.hadoop.util.TypedTupleElementStreamComparator (implements java.util.Comparator<T>, cascading.tuple.StreamComparator<T>)

## Interface Hierarchy

- cascading.tuple.hadoop.util.BaseTupleComparator.RawComparison
- cascading.flow.hadoop.util.ResettableCollection<V>

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - cascading.flow.hadoop.HadoopCoGroupClosure.Spill
    - cascading.flow.hadoop.stream.HadoopMemoryJoinGate.Spill