1 /* 2 * Copyright (C) 2020 The Guava Authors 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except 5 * in compliance with the License. You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software distributed under the License 10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 11 * or implied. See the License for the specific language governing permissions and limitations under 12 * the License. 13 */ 14 15 package com.google.common.io; 16 17 import com.google.common.annotations.GwtIncompatible; 18 import java.nio.Buffer; 19 20 /** 21 * Wrappers around {@link Buffer} methods that are covariantly overridden in Java 9+. See 22 * https://github.com/google/guava/issues/3990 23 */ 24 @GwtIncompatible 25 @ElementTypesAreNonnullByDefault 26 final class Java8Compatibility { clear(Buffer b)27 static void clear(Buffer b) { 28 b.clear(); 29 } 30 flip(Buffer b)31 static void flip(Buffer b) { 32 b.flip(); 33 } 34 limit(Buffer b, int limit)35 static void limit(Buffer b, int limit) { 36 b.limit(limit); 37 } 38 mark(Buffer b)39 static void mark(Buffer b) { 40 b.mark(); 41 } 42 position(Buffer b, int position)43 static void position(Buffer b, int position) { 44 b.position(position); 45 } 46 reset(Buffer b)47 static void reset(Buffer b) { 48 b.reset(); 49 } 50 Java8Compatibility()51 private Java8Compatibility() {} 52 } 53