2019-03-10 05:13:22 +00:00
|
|
|
from dataclasses import dataclass
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class TypedVar:
|
|
|
|
type_: str
|
|
|
|
name: str
|
|
|
|
|
|
|
|
|
2019-03-10 05:38:52 +00:00
|
|
|
@dataclass
|
|
|
|
class ReturnType:
|
|
|
|
type_: str
|
|
|
|
|
|
|
|
|
2019-03-10 05:13:22 +00:00
|
|
|
@dataclass
|
|
|
|
class Function:
|
|
|
|
name: str
|
|
|
|
arguments: str
|
2019-03-10 05:38:52 +00:00
|
|
|
ret_type: ReturnType
|
2019-03-10 05:13:22 +00:00
|
|
|
block: list
|
2019-03-10 05:38:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class Identifier:
|
|
|
|
name: str
|
|
|
|
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class Import:
|
|
|
|
module: str
|
2019-03-10 06:04:37 +00:00
|
|
|
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class String:
|
|
|
|
value: str
|
|
|
|
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class Number:
|
|
|
|
value: str
|
|
|
|
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class FunctionCall:
|
|
|
|
function: str
|
|
|
|
args: list
|