GL_ATTACHED_SHADERS gl-program-get-int ; inline
: gl-program-shaders ( program -- shaders )
- dup gl-program-shaders-length
- [ dup "GLuint" <c-array> [ 0 <int> swap glGetAttachedShaders ] keep ] keep
- c-uint-array> ;
+ dup gl-program-shaders-length [
+ dup "GLuint" <c-array> 0 <int> over glGetAttachedShaders
+ ] keep c-uint-array> ;
-: delete-gl-program-only ( program -- ) glDeleteProgram ; inline
+: delete-gl-program-only ( program -- )
+ glDeleteProgram ; inline
-: detach-gl-program-shader ( program shader -- ) glDetachShader ; inline
+: detach-gl-program-shader ( program shader -- )
+ glDetachShader ; inline
: delete-gl-program ( program -- )
- dup gl-program-shaders [ 2dup detach-gl-program-shader delete-gl-shader ] each
- delete-gl-program-only ;
+ dup gl-program-shaders [
+ 2dup detach-gl-program-shader delete-gl-shader
+ ] each delete-gl-program-only ;
: with-gl-program ( program quot -- )
- swap glUseProgram [ call ] [ 0 glUseProgram ] [ ] cleanup ; inline
+ swap glUseProgram [ 0 glUseProgram ] [ ] cleanup ; inline
PREDICATE: integer gl-program (gl-program?) ;