Skip to content

Commit b769be1

Browse files
committed
factory_annex improvement and preparation for astToolkit .join
1 parent 94fd516 commit b769be1

1 file changed

Lines changed: 8 additions & 13 deletions

File tree

toolFactory/factory_annex.py

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
, returns=ast.Subscript(ast.Name('Callable'), ast.Tuple([ast.List([ast.Name('NodeORattribute')]), ast.Name('NodeORattribute')])))
1414

1515
# `Make` =====================================================================
16+
astAssign_EndPositionT = ast.Assign([ast.Name('_EndPositionT', ast.Store())], value=ast.Call(ast.Name('typing_TypeVar'), args=[ast.Constant('_EndPositionT'), ast.Name('int'), ast.BinOp(ast.Name('int'), ast.BitOr(), ast.Constant(None))], keywords=[ast.keyword('default', value=ast.BinOp(ast.Name('int'), ast.BitOr(), ast.Constant(None)))]))
17+
18+
astClassDef_Attributes = ast.ClassDef('_Attributes', bases=[ast.Name('TypedDict'), ast.Subscript(ast.Name('Generic'), slice=ast.Name('_EndPositionT'))], keywords=[ast.keyword('total', value=ast.Constant(False))], body=[ast.AnnAssign(ast.Name('lineno', ast.Store()), annotation=ast.Name('int'), simple=1), ast.AnnAssign(ast.Name('col_offset', ast.Store()), annotation=ast.Name('int'), simple=1), ast.AnnAssign(ast.Name('end_lineno', ast.Store()), annotation=ast.Name('_EndPositionT'), simple=1), ast.AnnAssign(ast.Name('end_col_offset', ast.Store()), annotation=ast.Name('_EndPositionT'), simple=1)])
19+
1620
FunctionDefMake_Attribute: ast.FunctionDef = ast.FunctionDef('Attribute'
1721
, args=ast.arguments(args=[ast.arg(arg='value', annotation=ast.Attribute(ast.Name('ast'), 'expr'))]
1822
, vararg=ast.arg(arg='attribute', annotation=ast.Name('str'))
@@ -52,17 +56,8 @@
5256
, returns=ast.Attribute(ast.Name('ast'), 'Import'))
5357

5458
# `TypeAlias` =====================================================================
55-
listHandmadeTypeAlias_astTypes: list[ast.AnnAssign] = []
56-
57-
listStrRepresentationsOfTypeAlias: list[str] = [
58-
(astTypes_intORstr := "intORstr: typing_TypeAlias = Any"),
59-
(astTypes_intORstrORtype_params := "intORstrORtype_params: typing_TypeAlias = Any"),
60-
(astTypes_intORtype_params := "intORtype_params: typing_TypeAlias = Any"),
59+
listHandmade_astTypes: list[ast.stmt] = [
60+
ast.AnnAssign(ast.Name('intORstr', ast.Store()), annotation=ast.Name('typing_TypeAlias'), value=ast.Name('Any'), simple=1),
61+
ast.AnnAssign(ast.Name('intORstrORtype_params', ast.Store()), annotation=ast.Name('typing_TypeAlias'), value=ast.Name('Any'), simple=1),
62+
ast.AnnAssign(ast.Name('intORtype_params', ast.Store()), annotation=ast.Name('typing_TypeAlias'), value=ast.Name('Any'), simple=1),
6163
]
62-
63-
for string in listStrRepresentationsOfTypeAlias:
64-
# The string representation of the type alias is parsed into an AST module.
65-
astModule = ast.parse(string)
66-
for node in ast.iter_child_nodes(astModule):
67-
if isinstance(node, ast.AnnAssign):
68-
listHandmadeTypeAlias_astTypes.append(node)

0 commit comments

Comments
 (0)