animate/webGl/my-threejs-test/node_modules/glsl-token-depth
Sam 907ebae4c0 larry babby and threejs for glsl 2024-06-24 21:24:00 +12:00
..
.npmignore larry babby and threejs for glsl 2024-06-24 21:24:00 +12:00
LICENSE.md larry babby and threejs for glsl 2024-06-24 21:24:00 +12:00
README.md larry babby and threejs for glsl 2024-06-24 21:24:00 +12:00
index.js larry babby and threejs for glsl 2024-06-24 21:24:00 +12:00
package.json larry babby and threejs for glsl 2024-06-24 21:24:00 +12:00

README.md

glsl-token-depth

experimental

Determine the scope depth of an array of GLSL tokens.

Useful for inferring the scope of variables in a GLSL shader without having to fully parse the source.

Usage

NPM

depth(tokens)

Where tokens is an array of tokens returned from glsl-tokenizer. Each token will be modified in-place, and given a depth property.

var tokenize = require('glsl-tokenizer/string')
var depth    = require('glsl-token-depth')
var fs       = require('fs')

var src = fs.readFileSync('shader.frag', 'utf8')
var tokens = tokenize(src)

depth(tokens)

tokens[0].depth // 0
tokens[1].depth // 0
tokens[2].depth // 0
tokens[3].depth // 0
tokens[4].depth // 1
// ...

See Also

License

MIT. See LICENSE.md for details.