Package net.minecraft.client.gl
Class GlImportProcessor
java.lang.Object
net.minecraft.client.gl.GlImportProcessor
Handles the flattening of "moj_" import strings in the loaded GLSL shader file.
Instances of an import are replaced by the contents of the referenced file
prefixed by a comment describing the line position and original file location
of the import.
- Mappings:
Namespace Name named net/minecraft/client/gl/GlImportProcessor
intermediary net/minecraft/class_5913
official ffx
-
Nested Class Summary
Modifier and TypeClassDescriptionprivate static final class
A context for the parser to keep track of its current line and caret position in the file. -
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic String
addDefines
(String source, Defines defines) private String
extractVersion
(String line, GlImportProcessor.Context context) Converts a line known to contain an import into a fully-qualified version of itself for insertion as a comment.private static boolean
hasBogusString
(String string, Matcher matcher, int matchEnd) private static boolean
isLineValid
(String line, Matcher matcher) loadImport
(boolean inline, String name) Called to load an import reference's source code.parseImports
(String source, GlImportProcessor.Context context, String path) private String
readImport
(String line, int start) readSource
(String source) Reads the source code supplied into a list of lines suitable for uploading to the GL Shader cache.
-
Field Details
-
MULTI_LINE_COMMENT_PATTERN
- See Also:
- Mappings:
Namespace Name Mixin selector named MULTI_LINE_COMMENT_PATTERN
Lnet/minecraft/client/gl/GlImportProcessor;MULTI_LINE_COMMENT_PATTERN:Ljava/lang/String;
intermediary field_32036
Lnet/minecraft/class_5913;field_32036:Ljava/lang/String;
official a
Lffx;a:Ljava/lang/String;
-
SINGLE_LINE_COMMENT_PATTERN
- See Also:
- Mappings:
Namespace Name Mixin selector named SINGLE_LINE_COMMENT_PATTERN
Lnet/minecraft/client/gl/GlImportProcessor;SINGLE_LINE_COMMENT_PATTERN:Ljava/lang/String;
intermediary field_33620
Lnet/minecraft/class_5913;field_33620:Ljava/lang/String;
official b
Lffx;b:Ljava/lang/String;
-
MOJ_IMPORT_PATTERN
- Mappings:
Namespace Name Mixin selector named MOJ_IMPORT_PATTERN
Lnet/minecraft/client/gl/GlImportProcessor;MOJ_IMPORT_PATTERN:Ljava/util/regex/Pattern;
intermediary field_29200
Lnet/minecraft/class_5913;field_29200:Ljava/util/regex/Pattern;
official c
Lffx;c:Ljava/util/regex/Pattern;
-
IMPORT_VERSION_PATTERN
- Mappings:
Namespace Name Mixin selector named IMPORT_VERSION_PATTERN
Lnet/minecraft/client/gl/GlImportProcessor;IMPORT_VERSION_PATTERN:Ljava/util/regex/Pattern;
intermediary field_29201
Lnet/minecraft/class_5913;field_29201:Ljava/util/regex/Pattern;
official d
Lffx;d:Ljava/util/regex/Pattern;
-
TRAILING_WHITESPACE_PATTERN
- Mappings:
Namespace Name Mixin selector named TRAILING_WHITESPACE_PATTERN
Lnet/minecraft/client/gl/GlImportProcessor;TRAILING_WHITESPACE_PATTERN:Ljava/util/regex/Pattern;
intermediary field_33621
Lnet/minecraft/class_5913;field_33621:Ljava/util/regex/Pattern;
official e
Lffx;e:Ljava/util/regex/Pattern;
-
-
Constructor Details
-
GlImportProcessor
public GlImportProcessor()
-
-
Method Details
-
readSource
Reads the source code supplied into a list of lines suitable for uploading to the GL Shader cache.Imports are processed as per the description of this class.
- Mappings:
Namespace Name Mixin selector named readSource
Lnet/minecraft/client/gl/GlImportProcessor;readSource(Ljava/lang/String;)Ljava/util/List;
intermediary method_34229
Lnet/minecraft/class_5913;method_34229(Ljava/lang/String;)Ljava/util/List;
official a
Lffx;a(Ljava/lang/String;)Ljava/util/List;
-
parseImports
- Mappings:
Namespace Name Mixin selector named parseImports
Lnet/minecraft/client/gl/GlImportProcessor;parseImports(Ljava/lang/String;Lnet/minecraft/client/gl/GlImportProcessor$Context;Ljava/lang/String;)Ljava/util/List;
intermediary method_34232
Lnet/minecraft/class_5913;method_34232(Ljava/lang/String;Lnet/minecraft/class_5913$class_5914;Ljava/lang/String;)Ljava/util/List;
official a
Lffx;a(Ljava/lang/String;Lffx$a;Ljava/lang/String;)Ljava/util/List;
-
extractVersion
Converts a line known to contain an import into a fully-qualified version of itself for insertion as a comment.- Mappings:
Namespace Name Mixin selector named extractVersion
Lnet/minecraft/client/gl/GlImportProcessor;extractVersion(Ljava/lang/String;Lnet/minecraft/client/gl/GlImportProcessor$Context;)Ljava/lang/String;
intermediary method_34231
Lnet/minecraft/class_5913;method_34231(Ljava/lang/String;Lnet/minecraft/class_5913$class_5914;)Ljava/lang/String;
official a
Lffx;a(Ljava/lang/String;Lffx$a;)Ljava/lang/String;
-
readImport
- Mappings:
Namespace Name Mixin selector named readImport
Lnet/minecraft/client/gl/GlImportProcessor;readImport(Ljava/lang/String;I)Ljava/lang/String;
intermediary method_34230
Lnet/minecraft/class_5913;method_34230(Ljava/lang/String;I)Ljava/lang/String;
official a
Lffx;a(Ljava/lang/String;I)Ljava/lang/String;
-
isLineValid
- Mappings:
Namespace Name Mixin selector named isLineValid
Lnet/minecraft/client/gl/GlImportProcessor;isLineValid(Ljava/lang/String;Ljava/util/regex/Matcher;)Z
intermediary method_36423
Lnet/minecraft/class_5913;method_36423(Ljava/lang/String;Ljava/util/regex/Matcher;)Z
official a
Lffx;a(Ljava/lang/String;Ljava/util/regex/Matcher;)Z
-
hasBogusString
- Mappings:
Namespace Name Mixin selector named hasBogusString
Lnet/minecraft/client/gl/GlImportProcessor;hasBogusString(Ljava/lang/String;Ljava/util/regex/Matcher;I)Z
intermediary method_36424
Lnet/minecraft/class_5913;method_36424(Ljava/lang/String;Ljava/util/regex/Matcher;I)Z
official a
Lffx;a(Ljava/lang/String;Ljava/util/regex/Matcher;I)Z
-
loadImport
Called to load an import reference's source code.- Mappings:
Namespace Name Mixin selector named loadImport
Lnet/minecraft/client/gl/GlImportProcessor;loadImport(ZLjava/lang/String;)Ljava/lang/String;
intermediary method_34233
Lnet/minecraft/class_5913;method_34233(ZLjava/lang/String;)Ljava/lang/String;
official a
Lffx;a(ZLjava/lang/String;)Ljava/lang/String;
-
addDefines
- Mappings:
Namespace Name Mixin selector named addDefines
Lnet/minecraft/client/gl/GlImportProcessor;addDefines(Ljava/lang/String;Lnet/minecraft/client/gl/Defines;)Ljava/lang/String;
intermediary method_62880
Lnet/minecraft/class_5913;method_62880(Ljava/lang/String;Lnet/minecraft/class_10149;)Ljava/lang/String;
official a
Lffx;a(Ljava/lang/String;Lgma;)Ljava/lang/String;
-