Size: 656 bytes.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/env python3
# cs/net/proto/codegen/codegen_types.py
from dataclasses import dataclass, field
from typing import List, Dict, Union


class Types:
    STRING = "std::string"
    FLOAT = "float"
    INT = "int"
    BOOL = "bool"
    VECTOR = "std::vector"
    MAP = "std::map"


@dataclass
class Field:
    name: str
    type: str
    original_type: str
    validations: List["ValidationAttr"] = field(default_factory=list)


@dataclass
class ValidationAttr:
    name: str
    args: List[Union[str, "ValidationAttr"]]


@dataclass
class Proto:
    name: str
    fields: List[Field]
    namespace: str
    filename: str


ProtoDB = Dict[str, Proto]
v0 (commit) © 2025 @p13i.io | Load balancer proxied to: cs-code-viewer-1:8080 in 5ms.