Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Commits on Aug 15, 2011
  1. MachMsg: improve get and put methods

    The get and put methods are made more flexible, numerous and consistent.
    The nomenclature mirrors the relative get and put methods in ByteBuffer.
Commits on Aug 14, 2011
Commits on Aug 8, 2011
  1. MachMsgType:

Commits on Jul 26, 2011
  1. MachMsgType: make it a class, not an enum

    The reason is that we will need to read type descriptors even when we don't
    know what they are in advance, for instance for deallocating partly read
  2. Split out MachMsgType and TypeCheckException

    MachMsg is big enough as it is.
Commits on Jul 12, 2011
  1. @tschwinge

    Makefile: Make OpenJDK happy.

    tschwinge authored committed
    (And keep GCJ happy, too.)
  2. @tschwinge
  3. safety adjustments

  4. switch to Doxygen

Commits on Jul 8, 2011
Commits on Jul 6, 2011
  1. remove expried TODOs

  2. Reduce the amount of JNI code

    The methods which manipulates integer port name and message buffers directly
    are marked with "throws Unsafe" to prevent them from being used advertently.
    Methods which encapsulate the low-level code and expose only type-safe
    abstractions to the user catch the Unsafe pseudo-exception.
    This is similar in principle to the "semantic regimes" of org.vmmagic.
    Unfortunately using a pseudo-exception in this way introduces some quirks,
    as we have to silence compiler warning and "handle" the exception which is
    never actually thrown. Ideally this would be done with annotations instead
    (@Unsafe, @AssertSafe) and checked by a custom annotation processor.
    A third option would be to simply make unsafe methods package-private.
    Drawbacks are disallowing users access to these methods (even if they know
    what they're doing), and the lack of check for encapsulation of low-level
Commits on Jul 5, 2011
Commits on Jul 3, 2011
  1. MachMsg: fix doc

Commits on Jun 30, 2011
Something went wrong with that request. Please try again.