![]() |
Qucs-S S-parameter Viewer & RF Synthesis Tools
|
Classes | |
| class | Node |
| class | Op |
| class | ParsedRequirement |
| class | Value |
| class | Variable |
Functions | |
| ParsedRequirement | parse_requirement (str source) |
| ParsedRequirement | _parse_requirement (Tokenizer tokenizer) |
| tuple[str, str, MarkerList|None] | _parse_requirement_details (Tokenizer tokenizer) |
| MarkerList | _parse_requirement_marker (Tokenizer tokenizer, *int span_start, str after) |
| list[str] | _parse_extras (Tokenizer tokenizer) |
| list[str] | _parse_extras_list (Tokenizer tokenizer) |
| str | _parse_specifier (Tokenizer tokenizer) |
| str | _parse_version_many (Tokenizer tokenizer) |
| MarkerList | parse_marker (str source) |
| MarkerList | _parse_full_marker (Tokenizer tokenizer) |
| MarkerList | _parse_marker (Tokenizer tokenizer) |
| MarkerAtom | _parse_marker_atom (Tokenizer tokenizer) |
| MarkerItem | _parse_marker_item (Tokenizer tokenizer) |
| MarkerVar | _parse_marker_var (Tokenizer tokenizer) |
| Variable | process_env_var (str env_var) |
| Value | process_python_str (str python_str) |
| Op | _parse_marker_op (Tokenizer tokenizer) |
Variables | |
| MarkerVar = Union[Variable, Value] | |
| MarkerItem = Tuple[MarkerVar, Op, MarkerVar] | |
| MarkerAtom = Union[MarkerItem, Sequence["MarkerAtom"]] | |
| MarkerList = Sequence[Union["MarkerList", MarkerAtom, str]] | |
Handwritten parser of dependency specifiers. The docstring for each __parse_* function contains EBNF-inspired grammar representing the implementation.
|
protected |
extras = (LEFT_BRACKET wsp* extras_list? wsp* RIGHT_BRACKET)?
|
protected |
extras_list = identifier (wsp* ',' wsp* identifier)*
|
protected |
marker = marker_atom (BOOLOP marker_atom)+
|
protected |
marker_atom = WS? LEFT_PARENTHESIS WS? marker WS? RIGHT_PARENTHESIS WS?
| WS? marker_item WS?
|
protected |
marker_item = WS? marker_var WS? marker_op WS? marker_var WS?
|
protected |
marker_var = VARIABLE | QUOTED_STRING
|
protected |
requirement = WS? IDENTIFIER WS? extras WS? requirement_details
|
protected |
requirement_details = AT URL (WS requirement_marker?)?
| specifier WS? (requirement_marker)?
|
protected |
requirement_marker = SEMICOLON marker WS?
|
protected |
specifier = LEFT_PARENTHESIS WS? version_many WS? RIGHT_PARENTHESIS
| WS? version_many WS?
|
protected |
version_many = (SPECIFIER (WS? COMMA WS? SPECIFIER)*)?