/** * Serializes the given placeholder. Placeholders will always be serialized in one piece. * * @see openllet.aterm.ATermFwdVoid#voidVisitPlaceholder(ATermPlaceholder) */ @Override public void voidVisitPlaceholder(final ATermPlaceholder arg) { _currentBuffer.put(getHeader(arg)); // Do nothing, serializing its header is enough. }
/** * Serializes the given int. Ints will always be serialized in one piece. * * @see openllet.aterm.ATermFwdVoid#voidVisitInt(ATermInt) */ @Override public void voidVisitInt(final ATermInt arg) { _currentBuffer.put(getHeader(arg)); writeInt(arg.getInt()); }
/** * Serializes the given long. * * @see openllet.aterm.ATermFwdVoid#voidVisitLong(ATermLong) */ @Override public void voidVisitLong(final ATermLong arg) { _currentBuffer.put(getHeader(arg)); writeLong(arg.getLong()); }
/** * Serializes the given list. List information will always be serialized in one piece. * * @see openllet.aterm.ATermFwdVoid#voidVisitList(ATermList) */ @Override public void voidVisitList(final ATermList arg) { final byte header = getHeader(arg); _currentBuffer.put(header); writeInt(arg.getLength()); }
/** * Serializes the given real. Reals will always be serialized in one peice. * * @see openllet.aterm.ATermFwdVoid#voidVisitReal(ATermReal) */ @Override public void voidVisitReal(final ATermReal arg) { _currentBuffer.put(getHeader(arg)); writeDouble(arg.getReal()); }
/** * Serializes the given blob. A blob can be serialized in chunks. * * @see openllet.aterm.ATermFwdVoid#voidVisitBlob(ATermBlob) */ @Override public void voidVisitBlob(final ATermBlob arg) { final int size = arg.getBlobSize(); if (_indexInTerm == 0) { _currentBuffer.put(getHeader(arg)); writeInt(size); } final byte[] blobBytes = arg.getBlobData(); int bytesToWrite = size - _indexInTerm; final int remaining = _currentBuffer.remaining(); if (remaining < bytesToWrite) bytesToWrite = remaining; _currentBuffer.put(blobBytes, _indexInTerm, bytesToWrite); _indexInTerm += bytesToWrite; if (_indexInTerm == size) _indexInTerm = 0; }
byte header = getHeader(arg);