Cargo Features

glsl-lang has no features set by default.

[dependencies]
glsl-lang = { version = "0.5.2", features = ["lexer-v1", "lexer-v2-min", "lexer-v2-full", "parser-expr", "parser-statement", "serde", "glsl-lang-pp"] }
default

Default: only parse full translation units

lexer-v1

Provide interface to lexers through the lexers module

Enables v1 of glsl-lang-lexer

Affects parse::DefaultLexer, parsable::Parsable, parse::DefaultParse

lexer-v2-min

Enables v2-min of glsl-lang-lexer

Affects parse::DefaultLexer, parsable::Parsable, parse::DefaultParse

lexer-v2-full

Enables v2-full of glsl-lang-lexer

Affects parse::DefaultLexer, parsable::Parsable, parse::DefaultParse

parser-expr

Additional sub-parsers. Increases compilation time.

parser-statement
serde = rserde

AST Serialization

Enables serde of glsl-lang-lexer, glsl-lang-types, and lang-util

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

glsl-lang-pp implicit feature

Enables glsl-lang-pp

glsl-lang-pp:

GLSL language preprocessor

rserde serde?

Enables serde