Rebrand the Rust client crate (coven/ → hh/, package+binary "hack-house"), README, CLI strings, and branch (coven → hack-house). Gitea repo renamed cmd-chat → hack-house to match. Crypto/server logic unchanged; selftest + golden-vector test still green, binary is now `hack-house`. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
160 lines
2.2 KiB
Python
160 lines
2.2 KiB
Python
import sys
|
|
|
|
from dataclasses import dataclass, field
|
|
from typing import Literal, Optional, Union
|
|
|
|
|
|
@dataclass
|
|
class ModelStr:
|
|
foo: str
|
|
|
|
|
|
@dataclass
|
|
class ModelInt:
|
|
foo: int
|
|
|
|
|
|
@dataclass
|
|
class ModelFloat:
|
|
foo: float
|
|
|
|
|
|
@dataclass
|
|
class ModelBool:
|
|
foo: bool
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalStr:
|
|
foo: Optional[str]
|
|
|
|
|
|
@dataclass
|
|
class ModelUnion:
|
|
foo: Union[int, float]
|
|
|
|
|
|
@dataclass
|
|
class ModelUnionModels:
|
|
foo: Union[ModelInt, ModelFloat]
|
|
|
|
|
|
@dataclass
|
|
class ModelUnionStrInt:
|
|
foo: Union[str, int]
|
|
|
|
|
|
@dataclass
|
|
class ModelUnionIntStr:
|
|
foo: Union[int, str]
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalUnionStrInt:
|
|
foo: Optional[Union[str, int]]
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalUnionIntStr:
|
|
foo: Optional[Union[int, str]]
|
|
|
|
|
|
@dataclass
|
|
class ModelListStr:
|
|
foo: list[str]
|
|
|
|
|
|
@dataclass
|
|
class ModelListModel:
|
|
foo: list[ModelStr]
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalList:
|
|
foo: Optional[list[str]]
|
|
|
|
|
|
@dataclass
|
|
class ModelListUnion:
|
|
foo: list[Union[int, float]]
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalListUnion:
|
|
foo: Optional[list[Union[int, float]]]
|
|
|
|
|
|
@dataclass
|
|
class ModelModel:
|
|
foo: ModelStr
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalModel:
|
|
foo: Optional[ModelStr]
|
|
|
|
|
|
@dataclass
|
|
class ModelDictStr:
|
|
foo: dict[str, str]
|
|
|
|
|
|
@dataclass
|
|
class ModelDictModel:
|
|
foo: dict[str, ModelStr]
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalDict:
|
|
foo: Optional[dict[str, str]]
|
|
|
|
|
|
@dataclass
|
|
class ModelDictUnion:
|
|
foo: dict[str, Union[int, float]]
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalDictUnion:
|
|
foo: Optional[dict[str, Union[int, float]]]
|
|
|
|
|
|
@dataclass
|
|
class ModelSingleLiteral:
|
|
foo: Literal[True]
|
|
|
|
|
|
@dataclass
|
|
class ModelMultipleLiteral:
|
|
foo: Literal[True, "y", "Y", 1]
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalSingleLiteral:
|
|
foo: Optional[Literal[True]]
|
|
|
|
|
|
@dataclass
|
|
class ModelOptionalMultipleLiteral:
|
|
foo: Optional[Literal[True, "y", "Y", 1]]
|
|
|
|
|
|
@dataclass
|
|
class ModelListStrWithDefaultFactory:
|
|
foo: list[str] = field(default_factory=list)
|
|
|
|
|
|
if sys.version_info > (3, 10):
|
|
|
|
@dataclass
|
|
class ModelUnionTypeStrNone:
|
|
foo: str | None
|
|
|
|
@dataclass
|
|
class ModelUnionTypeStrIntNone:
|
|
foo: str | int | None
|
|
|
|
@dataclass
|
|
class ModelUnionTypeStrInt:
|
|
foo: str | int
|