@Override public Pair<Pointer<?>, Long> fromObject(Object value) { if (value instanceof Long) return new Pair<Pointer<?>, Long>(Pointer.pointerToLong(((Long) value).longValue()), 8L); else if (value instanceof Integer) return new Pair<Pointer<?>, Long>(Pointer.pointerToInt(((Integer) value).intValue()), 4L); else if (value instanceof Short) return new Pair<Pointer<?>, Long>(Pointer.pointerToShort(((Short) value).shortValue()), 2L); else if (value instanceof Byte) return new Pair<Pointer<?>, Long>(Pointer.pointerToByte(((Short) value).byteValue()), 1L); else if (value instanceof CLong) return new Pair<Pointer<?>, Long>( Pointer.pointerToCLong(((Long) value).longValue()), (long) Long.SIZE); return null; }