MCPcopy Index your code
hub / github.com/httpie/cli / ParserSpec

Class ParserSpec

httpie/cli/options.py:42–69  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

40
41@dataclass
42class ParserSpec:
43 program: str
44 description: Optional[str] = None
45 epilog: Optional[str] = None
46 groups: List['Group'] = field(default_factory=list)
47 man_page_hint: Optional[str] = None
48 source_file: Optional[str] = None
49
50 def finalize(self) -> 'ParserSpec':
51 if self.description:
52 self.description = textwrap.dedent(self.description)
53 if self.epilog:
54 self.epilog = textwrap.dedent(self.epilog)
55 for group in self.groups:
56 group.finalize()
57 return self
58
59 def add_group(self, name: str, **kwargs) -> 'Group':
60 group = Group(name, **kwargs)
61 self.groups.append(group)
62 return group
63
64 def serialize(self) -> Dict[str, Any]:
65 return {
66 'name': self.program,
67 'description': self.description,
68 'groups': [group.serialize() for group in self.groups],
69 }
70
71
72@dataclass

Callers 3

definition.pyFile · 0.90
parser_to_parser_specFunction · 0.85

Calls

no outgoing calls

Tested by 1