internal static VectorConstruction fillMissing(VectorConstruction vector, Lookup lookup) { switch (lookup) { case Lookup.Exact: return(vector); case Lookup.ExactOrGreater: return(VectorConstruction.NewFillMissing(vector, VectorFillMissing.NewDirection(Direction.Backward))); case Lookup.ExactOrSmaller: return(VectorConstruction.NewFillMissing(vector, VectorFillMissing.NewDirection(Direction.Forward))); default: throw new InvalidOperationException("Lookup.Smaller and Lookup.Greater are not supported when joining"); } }