fix(cli): improve dump-registry command output
This commit is contained in:
@@ -50,14 +50,12 @@ class Function:
|
|||||||
args: list[str] = []
|
args: list[str] = []
|
||||||
if len(self.pos_args) != 0:
|
if len(self.pos_args) != 0:
|
||||||
args += list(map(str, self.pos_args))
|
args += list(map(str, self.pos_args))
|
||||||
if len(self.args) + len(self.kw_args) != 0:
|
|
||||||
args.append("/")
|
args.append("/")
|
||||||
|
|
||||||
if len(self.args) != 0:
|
if len(self.args) != 0:
|
||||||
args += list(map(str, self.args))
|
args += list(map(str, self.args))
|
||||||
|
|
||||||
if len(self.kw_args) != 0:
|
if len(self.kw_args) != 0:
|
||||||
if len(args) != 0:
|
|
||||||
args.append("*")
|
args.append("*")
|
||||||
args += list(map(str, self.kw_args))
|
args += list(map(str, self.kw_args))
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,21 @@ from typing import TextIO
|
|||||||
import click
|
import click
|
||||||
|
|
||||||
from midas.checker.checker import TypeChecker
|
from midas.checker.checker import TypeChecker
|
||||||
from midas.checker.types import Type
|
from midas.checker.types import AliasType, AppliedType, BaseType, GenericType, Type
|
||||||
|
|
||||||
|
|
||||||
|
def base_type(type: Type) -> Type:
|
||||||
|
match type:
|
||||||
|
case BaseType():
|
||||||
|
return type
|
||||||
|
case AliasType(type=base):
|
||||||
|
return base
|
||||||
|
case AppliedType(body=body):
|
||||||
|
return body
|
||||||
|
case GenericType(body=body):
|
||||||
|
return body
|
||||||
|
case _:
|
||||||
|
return type
|
||||||
|
|
||||||
|
|
||||||
@click.command(help="Dump types registry")
|
@click.command(help="Dump types registry")
|
||||||
@@ -23,7 +37,7 @@ def dump_registry(
|
|||||||
|
|
||||||
for name, type in checker.types._types.items():
|
for name, type in checker.types._types.items():
|
||||||
members: dict[str, Type] = checker.types._members.get(name, {})
|
members: dict[str, Type] = checker.types._members.get(name, {})
|
||||||
print(f"{name} = {type}")
|
print(f"{name} = {base_type(type)}")
|
||||||
if len(members) != 0:
|
if len(members) != 0:
|
||||||
print(" " * 4 + "Members:")
|
print(" " * 4 + "Members:")
|
||||||
for member_name, member_type in members.items():
|
for member_name, member_type in members.items():
|
||||||
|
|||||||
Reference in New Issue
Block a user