Let webgl.match() be accessible

This commit is contained in:
Christoph Diehl 2018-05-10 09:16:18 +02:00
parent 60a7b65cdf
commit 3c7d14349a
No known key found for this signature in database
GPG key ID: 799CE5B68FEF404A

View file

@ -57,7 +57,7 @@ class webgl extends make {
return random.item(sources) return random.item(sources)
} }
match (shader, regex, group = 1) { static match (shader, regex, group = 1) {
let matches = [] let matches = []
let match let match
while (match = regex.exec(shader)) { while (match = regex.exec(shader)) {
@ -68,33 +68,33 @@ class webgl extends make {
static parseUniforms (shader, group = 1) { static parseUniforms (shader, group = 1) {
/* Todo: Parse their individual data types into categories. */ /* Todo: Parse their individual data types into categories. */
return match(shader, /uniform .+? (\w+)(?=[\[;])/gm, group) return webgl.match(shader, /uniform .+? (\w+)(?=[\[;])/gm, group)
} }
static parseAttributes (shader, group = 1) { static parseAttributes (shader, group = 1) {
return match(shader, /attribute .+? (\w+)(?=;)/gm, group) return webgl.match(shader, /attribute .+? (\w+)(?=;)/gm, group)
} }
static parseVaryings (shader, group = 1) { static parseVaryings (shader, group = 1) {
return match(shader, /varying .+? (\w+)(?=;)/gm, group) return webgl.match(shader, /varying .+? (\w+)(?=;)/gm, group)
} }
static parseFragDatav2 (shader, group = 1) { static parseFragDatav2 (shader, group = 1) {
// #version 200 // #version 200
return match(shader, /(gl_Frag[^[ =]+)/gm, group) return webgl.match(shader, /(gl_Frag[^[ =]+)/gm, group)
} }
static parseFragDatav3 (shader, group = 1) { static parseFragDatav3 (shader, group = 1) {
// #version 300 // #version 300
return match(shader, /out .+? (\w+)(?=[\[;])/gm, group) return webgl.match(shader, /out .+? (\w+)(?=[\[;])/gm, group)
} }
static parseFrag (shader, group = 1) { static parseFrag (shader, group = 1) {
let matches = parseFragDatav2(shader) let matches = webgl.parseFragDatav2(shader)
if (matches.length) { if (matches.length) {
return matches return matches
} }
return parseFragDatav3(shader) return webgl.parseFragDatav3(shader)
} }
static randomBitmask () { static randomBitmask () {