class ClientRange implements ClientExpression<ClientRange> {

    @Override
    public void accept(ClientELVisitor visitor) {
        if (start != null && start.getBoundary() != null) {
            start.getBoundary().accept(visitor);
        }
        if (end != null && end.getBoundary() != null) {
            end.getBoundary().accept(visitor);
        }
        visitor.visit(this);
    }

    public  ClientRange();
    public  ClientRange(ClientRangeBoundary start, ClientRangeBoundary end);
    public  ClientRange(ClientLiteral start, ClientLiteral end);
    public  ClientRange(ClientExpression start, ClientExpression end);
    public  ClientRange(ClientRange range);

}