PyBuffer.
A few objects implement BufferProtocol (e.g. by inheritance) but cannot actually provide
their value as a PyBuffer. These should throw ClassCastException, permitting the
idiom:
try (PyBuffer buf = ((BufferProtocol) obj).getBuffer(PyBUF.SIMPLE)) {
... // Do something with buf
} catch (ClassCastException e) {
... // expected bytes object or buffer not obj.getType()
}
The catch is executed identically whether the cause is the explicit cast of
obj or getBuffer, and the try-with-resources releases the buffer if one was
obtained.
| Modifier and Type | Method and Description |
|---|---|
| public PyBuffer | Returns: exported bufferspecifying features demanded and the navigational capabilities of the consumer flags)Method by which the consumer requests the buffer from the exporter. |
| getBuffer | back to summary |
|---|---|
| public PyBuffer getBuffer(int flags) throws PyException, ClassCastException Method by which the consumer requests the buffer from the exporter. The consumer provides
information on its ability to understand buffer navigation. Each consumer requesting a buffer
in this way, when it has finished using it, should make a corresponding call to
| |