// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

package io.v.syncbase.v23.services.syncbase.nosql;

/**
 * Represents all rows with keys in {@code [start, limit)}.  If limit is {@code ""}, all rows with
 * keys &ge; {@code start} are included.
 */
public interface RowRange {
    /**
     * Returns the key that marks the start of the row range.
     */
    public String getStart();

    /**
     * Returns the key that marks the limit of the row range.
     */
    public String getLimit();
}