Expression CreateExpressionFromString(string name) { // TODO: catch errors var result = ShaderParser.GetParser <ParadoxGrammar>(ShaderParser.GetGrammar <ParadoxGrammar>().ExpressionNonTerminal).Parser.Parse(name, ""); return((Expression)result.Root.AstNode); }
/// <summary> /// Preprocesses and parses the specified source. /// </summary> /// <param name="source">The source.</param> /// <param name="sourceFileName">Name of the source file.</param> /// <param name="macros">The macros defined for the preprocessor.</param> /// <param name="includeDirectories">The include directories used by the preprocessor..</param> /// <returns>Result of parsing</returns> public static ParsingResult TryPreProcessAndParse(string source, string sourceFileName, SiliconStudio.Shaders.Parser.ShaderMacro[] macros = null, params string[] includeDirectories) { var result = ShaderParser.GetParser <XenkoGrammar>().TryPreProcessAndParse(source, sourceFileName, macros, includeDirectories); PrepareShader(result.Shader); return(result); }
/// <summary> /// Parses the specified source code. /// </summary> /// <param name="sourceCode">The source code.</param> /// <param name="sourceFileName">Name of the source file.</param> /// <returns></returns> public static ParsingResult TryParse(string sourceCode, string sourceFileName) { var parsingResult = ShaderParser.GetParser <XenkoGrammar>().Parse(sourceCode, sourceFileName); PrepareShader(parsingResult.Shader); return(parsingResult); }
/// <summary> /// Parses the specified source code. /// </summary> /// <param name="sourceCode">The source code.</param> /// <param name="sourceFileName">Name of the source file.</param> /// <returns></returns> public static Shader Parse(string sourceCode, string sourceFileName) { return(PrepareShader(ShaderParser.GetParser <XenkoGrammar>().ParseAndCheck(sourceCode, sourceFileName))); }
/// <summary> /// Preprocesses and parses the specified source. /// </summary> /// <param name="source">The source.</param> /// <param name="sourceFileName">Name of the source file.</param> /// <param name="macros">The macros defined for the preprocessor.</param> /// <param name="includeDirectories">The include directories used by the preprocessor..</param> /// <returns>Result of parsing</returns> public static Shader PreProcessAndParse(string source, string sourceFileName, SiliconStudio.Shaders.Parser.ShaderMacro[] macros = null, params string[] includeDirectories) { return(PrepareShader(ShaderParser.GetParser <XenkoGrammar>().PreProcessAndParse(source, sourceFileName, macros, includeDirectories))); }
/// <summary> /// Preinitialize the parser. /// </summary> public static void Initialize() { ShaderParser.GetParser <XenkoGrammar>(); }
/// <summary> /// Preinitialize the parser. /// </summary> public static void Initialize() { ShaderParser.GetParser <StrideGrammar>(); }
/// <summary> /// Parses the specified source. /// </summary> /// <param name="source">The source.</param> /// <param name="sourceFileName">Name of the source file.</param> /// <param name="macros">The macros defined for the preprocessor.</param> /// <param name="includeDirectories">The include directories used by the preprocessor..</param> /// <returns>Result of parsing</returns> public static Shader Parse(string source, string sourceFileName, ShaderMacro[] macros = null, params string[] includeDirectories) { return(ShaderParser.GetParser <HlslGrammar>().PreProcessAndParse(source, sourceFileName, macros, includeDirectories)); }
/// <summary> /// Initializes this instance. /// </summary> public static void Initialize() { // Call get parser to force an initialization ShaderParser.GetParser <HlslGrammar>(); }
/// <summary> /// Initializes this instance. /// </summary> static HlslParser() { // Call get parser to force an initialization ShaderParser.GetParser <HlslGrammar>(); }
/// <summary> /// Preinitialize the parser. /// </summary> public static void Initialize() { ShaderParser.GetParser <ParadoxGrammar>(); }