Skip to content

Commit e53ea17

Browse files
committed
Buffer.remSize
1 parent 432a0e1 commit e53ea17

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

src/main/kotlin/glm_/buffer/buffer.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package glm_.buffer
22

33

4+
import glm_.BYTES
45
import org.lwjgl.PointerBuffer
56
import org.lwjgl.system.MemoryUtil
67
import java.nio.*
@@ -55,5 +56,16 @@ inline val Buffer.cap: Int
5556
inline val Buffer.rem: Int
5657
get() = remaining()
5758

59+
inline val Buffer.remSize: Int
60+
get() = rem * when(this) {
61+
is ByteBuffer -> Byte.BYTES
62+
is ShortBuffer -> Short.BYTES
63+
is IntBuffer -> Int.BYTES
64+
is LongBuffer -> Long.BYTES
65+
is FloatBuffer -> Float.BYTES
66+
is DoubleBuffer -> Double.BYTES
67+
is CharBuffer -> Char.BYTES
68+
else -> throw Error("unsupported buffer type")
69+
}
5870

59-
typealias Pointer = Long
71+
typealias Pointer = Long // TODO -> inline class

0 commit comments

Comments
 (0)