natcoreinputstream.cc

来自「gcc的组建」· CC 代码 · 共 52 行

CC
52
字号
// natCoreInputStream.cc -- C++ side of CoreInputStream/* Copyright (C) 2001  Free Software Foundation   This file is part of libgcj.This software is copyrighted work licensed under the terms of theLibgcj License.  Please consult the file "LIBGCJ_LICENSE" fordetails.  *//* Author: Anthony Green <green@redhat.com>.  */#include <config.h>#include <gcj/cni.h>#include <jvm.h>#include <string.h>#include <java/lang/NullPointerException.h>#include <java/lang/ArrayIndexOutOfBoundsException.h>#include <gnu/java/net/protocol/core/CoreInputStream.h>jintgnu::java::net::protocol::core::CoreInputStream::unsafeGetByte (jlong offset){  return ((char*) ptr) [offset];}jintgnu::java::net::protocol::core::CoreInputStream::copyIntoByteArray (jbyteArray dest,							            jint offset,							            jint numBytes){  if (!dest)    throw new ::java::lang::NullPointerException;    jsize destSize = JvGetArrayLength (dest);    if (offset < 0 || numBytes < 0 || offset + numBytes < 0      || offset + numBytes > destSize      || pos + numBytes > count)    throw new ::java::lang::ArrayIndexOutOfBoundsException;  void *pcore = (void *) &((char*) ptr) [pos];  void *pdest = (void *) (elements (dest) + offset);  memcpy (pdest, pcore, numBytes);  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?