Skip to content

Commit efb9256

Browse files
authored
Merge pull request #24 from samthakur587/translater_fix
fix: small fix in translate class
2 parents 79ff160 + 7a61acb commit efb9256

6 files changed

Lines changed: 17 additions & 18 deletions

File tree

crosstl/_crosstl.py

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,17 @@
55
from .src.translator.ast import ASTNode
66
from .src.backend.DirectX import *
77
from .src.backend.Metal import *
8-
#from .src.backend.Opengl import *
8+
from .src.backend.Opengl import *
99

10-
def translate(file_path: str, backend: str = "cgl") -> str:
10+
11+
def translate(file_path: str, backend: str = "crossgl") -> str:
1112
backend = backend.lower()
1213

13-
with open(file_path, 'r') as file:
14+
with open(file_path, "r") as file:
1415
shader_code = file.read()
1516

1617
# Determine the input shader type based on the file extension
1718
if file_path.endswith(".cgl"):
18-
from .src.translator.lexer import Lexer
19-
from .src.translator.parser import Parser
2019
lexer = Lexer(shader_code)
2120
parser = Parser(lexer.tokens)
2221
elif file_path.endswith(".hlsl"):
@@ -26,9 +25,8 @@ def translate(file_path: str, backend: str = "cgl") -> str:
2625
lexer = MetalLexer(shader_code)
2726
parser = MetalParser(lexer.tokens)
2827
elif file_path.endswith(".glsl"):
29-
from .src.backend.Opengl import Lexer , Parser
30-
lexer = Lexer(shader_code)
31-
parser = Parser(lexer.tokens)
28+
lexer = GLSLLexer(shader_code)
29+
parser = GLSLParser(lexer.tokens)
3230
else:
3331
raise ValueError(f"Unsupported shader file type: {file_path}")
3432

@@ -53,10 +51,11 @@ def translate(file_path: str, backend: str = "cgl") -> str:
5351
elif file_path.endswith(".metal"):
5452
codegen = MetalToCrossGLConverter()
5553
elif file_path.endswith(".glsl"):
56-
from .src.backend.Opengl import CrossglCodeGen as GLSLToCrossGLConverter
5754
codegen = GLSLToCrossGLConverter()
5855
else:
5956
raise ValueError(f"Reverse translation not supported for: {file_path}")
6057
return codegen.generate(ast)
6158
else:
62-
raise ValueError(f"Unsupported translation scenario: {file_path} to {backend}")
59+
raise ValueError(
60+
f"Unsupported translation scenario: {file_path} to {backend}"
61+
)

crosstl/src/backend/DirectX/DirectxCrossGLCodeGen.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def __init__(self):
1717
"int": "int",
1818
}
1919

20-
def convert(self, ast):
20+
def generate(self, ast):
2121
self.process_structs(ast)
2222

2323
code = "shader main {\n"

crosstl/src/backend/Opengl/OpenglLexer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878
}
7979

8080

81-
class Lexer:
81+
class GLSLLexer:
8282
def __init__(self, code):
8383
self.code = code
8484
self.tokens = []

crosstl/src/backend/Opengl/OpenglParser.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@
1717
FRAGMENTShaderNode,
1818
VersionDirectiveNode,
1919
)
20-
from .OpenglLexer import Lexer
20+
from .OpenglLexer import *
2121

2222

23-
class Parser:
23+
class GLSLParser:
2424
def __init__(self, tokens):
2525
self.tokens = tokens
2626
self.pos = 0
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
from .OpenglLexer import Lexer
2-
from .OpenglParser import Parser
3-
from .openglCrossglCodegen import CrossglCodeGen
1+
from .OpenglLexer import *
2+
from .OpenglParser import *
3+
from .openglCrossglCodegen import *

crosstl/src/backend/Opengl/openglCrossglCodegen.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from .OpenglLexer import *
44

55

6-
class CrossglCodeGen:
6+
class GLSLToCrossGLConverter:
77
def __init__(self):
88
self.current_shader = None
99
self.vertex_item = None

0 commit comments

Comments
 (0)