DataclassDeclaration
Renders a Python dataclass.
Example:
<py.DataclassDeclaration name="User" kwOnly>
<py.VariableDeclaration instanceVariable omitNone name="id" type="int" />
<py.VariableDeclaration instanceVariable name={namekey("_", { ignoreNamePolicy: true })} type={dataclassesModule["."].KW_ONLY} omitNone />
<py.VariableDeclaration
instanceVariable
name="name"
type="str"
initializer={"Anonymous"}
/>
</py.DataclassDeclaration>
Will render as:
from dataclasses import dataclass
from dataclasses import KW_ONLY
@dataclass(kw_only=True)
class User:
id: int
_: KW_ONLY
name: str = "Anonymous"
import { DataclassDeclaration } from "@alloy-js/python";
<DataclassDeclaration bases={Children[]} />import { DataclassDeclaration } from "@alloy-js/python/stc";
DataclassDeclaration({ bases: Children[] }).children(children)| bases | optional Children[] | The base classes that this class inherits from. |