refactor: add types to project.py

This commit is contained in:
Uri Shaked
2023-09-19 19:52:47 +03:00
parent 8df6312688
commit 3b469b9488
3 changed files with 61 additions and 20 deletions
+28
View File
@@ -0,0 +1,28 @@
import os
from typing import List, Dict, TypedDict, Optional
import json
class Port(TypedDict):
kind: str
name: str
direction: str
description: str
class Cell(TypedDict):
description: str
file_prefix: str
library: str
name: str
parameters: List[str]
ports: List[Port]
type: str
verilog_name: str
equation: Optional[str]
Cells = Dict[str, Cell]
def load_cells() -> Cells:
script_dir = os.path.dirname(os.path.realpath(__file__))
with open(os.path.join(script_dir, 'cells.json')) as fh:
return json.load(fh)