MapCursor.java revision 12968:4d8a004e5c6d
133965Sjdp/*
289857Sobrien * Copyright (c) 2017, 2017, Oracle and/or its affiliates. All rights reserved.
360484Sobrien * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
433965Sjdp *
577298Sobrien * This code is free software; you can redistribute it and/or modify it
633965Sjdp * under the terms of the GNU General Public License version 2 only, as
733965Sjdp * published by the Free Software Foundation.
833965Sjdp *
933965Sjdp * This code is distributed in the hope that it will be useful, but WITHOUT
1033965Sjdp * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1133965Sjdp * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1233965Sjdp * version 2 for more details (a copy is included in the LICENSE file that
1333965Sjdp * accompanied this code).
1433965Sjdp *
1533965Sjdp * You should have received a copy of the GNU General Public License version
1633965Sjdp * 2 along with this work; if not, write to the Free Software Foundation,
1733965Sjdp * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
1833965Sjdp *
1960484Sobrien * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
2060484Sobrien * or visit www.oracle.com if you need additional information or have any
2160484Sobrien * questions.
2233965Sjdp */
2333965Sjdppackage org.graalvm.util;
2433965Sjdp
2533965Sjdp/**
2689857Sobrien * Cursor to iterate over a mutable map.
2733965Sjdp */
2833965Sjdppublic interface MapCursor<K, V> extends UnmodifiableMapCursor<K, V> {
2933965Sjdp    /**
3033965Sjdp     * Remove the current entry from the map. May only be called once. After calling
3133965Sjdp     * {@link #remove()}, it is no longer valid to call {@link #getKey()} or {@link #getValue()} on
3233965Sjdp     * the current entry.
3333965Sjdp     */
3433965Sjdp    void remove();
3533965Sjdp}
3660484Sobrien