Skip to content

Commit dd99253

Browse files
committed
Linting
1 parent ddbd8c4 commit dd99253

File tree

6 files changed

+45
-33
lines changed

6 files changed

+45
-33
lines changed

pylasu/lionweb/ast_generation.py

+4-3
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ def visit(name: str):
5353

5454
return sorted_list
5555

56+
5657
def ast_generation(click, language: Language, output):
5758
import_abc = ast.ImportFrom(
5859
module='abc',
@@ -128,7 +129,7 @@ def ast_generation(click, language: Language, output):
128129
if isinstance(classifier, Concept):
129130
bases = []
130131
if classifier.get_extended_concept().id == StarLasuBaseLanguage.get_astnode(LionWebVersion.V2023_1).id:
131-
if len(classifier.get_implemented())==0:
132+
if len(classifier.get_implemented()) == 0:
132133
bases.append('Node')
133134
else:
134135
bases.append(classifier.get_extended_concept().get_name())
@@ -153,7 +154,7 @@ def ast_generation(click, language: Language, output):
153154
bases.append('StarLasuNamed')
154155
else:
155156
bases.append(i.get_name())
156-
#if classifier.is_abstract():
157+
# if classifier.is_abstract():
157158
# bases.append('ABC')
158159
dataclass_decorator = ast.Name(id="dataclass", ctx=ast.Load())
159160
classdef = ast.ClassDef(classifier.get_name(), bases=bases,
@@ -233,4 +234,4 @@ def ast_generation(click, language: Language, output):
233234
output_path = Path(output)
234235
output_path.mkdir(parents=True, exist_ok=True)
235236
with Path(f"{output}/ast.py").open("w", encoding="utf-8") as f:
236-
f.write(generated_code)
237+
f.write(generated_code)

pylasu/lionweb/deserializer_generation.py

+10-10
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,11 @@
11
import ast
2-
import keyword
32
from pathlib import Path
4-
from typing import List, Dict
53

64
import astor
7-
from lionwebpython.language import Language, Concept, Interface, Containment, Property
8-
from lionwebpython.language.classifier import Classifier
5+
from lionwebpython.language import Language, Concept
96
from lionwebpython.language.enumeration import Enumeration
107
from lionwebpython.language.primitive_type import PrimitiveType
11-
from lionwebpython.language.reference import Reference
12-
from lionwebpython.lionweb_version import LionWebVersion
138

14-
from pylasu.lionweb.starlasu import StarLasuBaseLanguage
159
from pylasu.lionweb.utils import to_snake_case, calculate_field_name
1610

1711

@@ -32,6 +26,7 @@ def make_cond(enumeration_name: str, member_name: str):
3226
]
3327
)
3428

29+
3530
# The return: return AssignmentType.Add
3631
def make_return(enumeration_name: str, member_name: str):
3732
return ast.Return(
@@ -42,6 +37,7 @@ def make_return(enumeration_name: str, member_name: str):
4237
)
4338
)
4439

40+
4541
def generate_register_deserializers_func(language: Language) -> ast.FunctionDef:
4642
fd = ast.FunctionDef(
4743
name="register_deserializers",
@@ -100,6 +96,7 @@ def generate_register_deserializers_func(language: Language) -> ast.FunctionDef:
10096
))
10197
return fd
10298

99+
103100
def generate_concept_deserializer(concept: Concept) -> ast.FunctionDef:
104101
constructor_assignments = []
105102
for f in concept.all_features():
@@ -132,6 +129,7 @@ def generate_concept_deserializer(concept: Concept) -> ast.FunctionDef:
132129
returns=ast.Name(id=concept.get_name(), ctx=ast.Load())
133130
)
134131

132+
135133
def deserializer_generation(click, language: Language, output):
136134
import_abc = ast.ImportFrom(
137135
module='abc',
@@ -173,12 +171,14 @@ def deserializer_generation(click, language: Language, output):
173171
)
174172
import_ast = ast.ImportFrom(
175173
module='.ast',
176-
names=[ast.alias(name=e.get_name(), asname=None) for e in language.get_elements() if not isinstance(e, PrimitiveType)],
174+
names=[ast.alias(name=e.get_name(), asname=None) for e in language.get_elements()
175+
if not isinstance(e, PrimitiveType)],
177176
level=0
178177
)
179178
import_primitives = ast.ImportFrom(
180179
module='primitive_types',
181-
names=[ast.alias(name=e.get_name(), asname=None) for e in language.get_elements() if isinstance(e, PrimitiveType)],
180+
names=[ast.alias(name=e.get_name(), asname=None) for e in language.get_elements()
181+
if isinstance(e, PrimitiveType)],
182182
level=0
183183
)
184184
import_json_serialization = ast.ImportFrom(
@@ -256,4 +256,4 @@ def deserializer_generation(click, language: Language, output):
256256
output_path.mkdir(parents=True, exist_ok=True)
257257
click.echo(f"📂 Saving deserializer to: {output}")
258258
with Path(f"{output}/deserializer.py").open("w", encoding="utf-8") as f:
259-
f.write(generated_code)
259+
f.write(generated_code)

pylasu/lionweb/generator.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,4 @@ def main(dependencies, lionweb_language, output):
3434

3535

3636
if __name__ == "__main__":
37-
main()
37+
main()

pylasu/lionweb/starlasu.py

+19-17
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,16 @@
1-
from typing import TYPE_CHECKING, Dict, Optional, cast
1+
from typing import TYPE_CHECKING, Dict, Optional
22

33
from lionwebpython.language import Language, Concept
44
from lionwebpython.language.lioncore_builtins import LionCoreBuiltins
55
from lionwebpython.language.primitive_type import PrimitiveType
6-
from lionwebpython.lionweb_version import LionWebVersion
76

87
from pylasu.model import Point, Position
98

109

1110
class StarLasuBaseLanguage(Language):
1211
if TYPE_CHECKING:
1312
from lionwebpython.language.concept import Concept
14-
from lionwebpython.language.interface import Interface
1513
from lionwebpython.language.primitive_type import PrimitiveType
16-
from lionwebpython.language.property import Property
1714
from lionwebpython.lionweb_version import LionWebVersion
1815
from lionwebpython.utils.id_utils import IdUtils
1916

@@ -41,18 +38,22 @@ def __init__(self, lion_web_version: "LionWebVersion"):
4138
self.set_key("com_strumenta_starlasu")
4239
self.set_version(version)
4340

44-
self.char = PrimitiveType(lion_web_version=lion_web_version, language=self,
45-
name="Char", id=f"com-strumenta-StarLasu-Char-id{version_id_suffix}",
46-
key="com_strumenta_starlasu-Char-key")
47-
self.point = PrimitiveType(lion_web_version=lion_web_version, language=self,
48-
name="Point", id=f"com-strumenta-StarLasu-Point-id{version_id_suffix}",
49-
key="com_strumenta_starlasu-Point-key")
50-
self.position = PrimitiveType(lion_web_version=lion_web_version, language=self,
51-
name="Position", id=f"com-strumenta-StarLasu-Position-id{version_id_suffix}",
52-
key="com_strumenta_starlasu-Position-key")
53-
self.astnode = Concept(lion_web_version=lion_web_version, language=self,
54-
name="ASTNode", key="com_strumenta_starlasu-ASTNode-key",
55-
id="com-strumenta-StarLasu-ASTNode-id")
41+
self.char = PrimitiveType(
42+
lion_web_version=lion_web_version, language=self,
43+
name="Char", id=f"com-strumenta-StarLasu-Char-id{version_id_suffix}",
44+
key="com_strumenta_starlasu-Char-key")
45+
self.point = PrimitiveType(
46+
lion_web_version=lion_web_version, language=self,
47+
name="Point", id=f"com-strumenta-StarLasu-Point-id{version_id_suffix}",
48+
key="com_strumenta_starlasu-Point-key")
49+
self.position = PrimitiveType(
50+
lion_web_version=lion_web_version, language=self,
51+
name="Position", id=f"com-strumenta-StarLasu-Position-id{version_id_suffix}",
52+
key="com_strumenta_starlasu-Position-key")
53+
self.astnode = Concept(
54+
lion_web_version=lion_web_version, language=self,
55+
name="ASTNode", key="com_strumenta_starlasu-ASTNode-key",
56+
id="com-strumenta-StarLasu-ASTNode-id")
5657

5758
@classmethod
5859
def get_astnode(
@@ -74,10 +75,11 @@ def get_instance(
7475

7576
return cls._instances[lion_web_version]
7677

78+
7779
def position_deserializer(serialized_value, is_required):
7880
parts = serialized_value.split("-")
7981
start_coordinates = parts[0].split(":")
8082
start = Point(int(start_coordinates[0][1:]), int(start_coordinates[1]))
8183
end_coordinates = parts[1].split(":")
8284
end = Point(int(end_coordinates[0][1:]), int(end_coordinates[1]))
83-
return Position(start, end)
85+
return Position(start, end)

pylasu/lionweb/utils.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ def to_snake_case(name: str) -> str:
1010
name = re.sub(r'([a-z0-9])([A-Z])', r'\1_\2', name)
1111
return name.lower()
1212

13+
1314
def calculate_field_name(feature: Feature) -> str:
1415
field_name = feature.get_name()
1516
if field_name in keyword.kwlist:
1617
field_name = f"{field_name}_"
17-
return field_name
18+
return field_name

pylasu/model/metamodel.py

+9-1
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,37 @@
44
class Expression(ABC):
55
pass
66

7+
78
class PlaceholderElement(ABC):
89
pass
910

11+
1012
class TypeAnnotation(ABC):
1113
pass
1214

15+
1316
class Parameter(ABC):
1417
pass
1518

19+
1620
class Statement(ABC):
1721
pass
1822

23+
1924
class EntityDeclaration(ABC):
2025
pass
2126

27+
2228
class BehaviorDeclaration(ABC):
2329
pass
2430

31+
2532
class Documentation(ABC):
2633
pass
2734

35+
2836
class Named(ABC):
2937

3038
@property
3139
def name(self) -> str:
32-
pass
40+
pass

0 commit comments

Comments
 (0)