form.parser.grammar
Attributes
Functions
|
Returns all printable text without the given characters. |
|
Returns true if the given character matches the token. |
|
" Returns the given value, ignoring the tokens alltogether. |
|
Converts the token to int if possible. |
|
Joins the given tokens into a single string. |
|
Converts the token to decimal if possible. |
|
Converts the token to uppercase if possible. |
|
Converts the token to an integer range if possible. |
|
Converts the token to a decimal range if possible. |
|
Converts the token to a working regex if possible. |
|
Converts the token to a date if possible. |
|
Computes an approximate day delta from a relativedelta. |
|
Checks if the date range is valid |
|
|
|
Unwraps grouped tokens. |
|
Takes the given tags and applies them to the token. |
|
Returns an expression that allows for whitespace inside, but not |
|
Wraps the given expression in the given characters. |
|
Wraps numers in the given characters, making sure the result is an int. |
|
Wraps the given choices in the given characters, making sure only |
|
Returns a mark (x) inclosed in the given characters. For example, |
|
Returns a textfield parser. |
|
Returns a textarea parser. |
|
Returns a code textfield with a specified syntax. |
|
Returns a password field parser. |
|
Returns an email field parser. |
|
Returns an url field parser. |
|
Returns an video url field parser. |
|
Returns an absolute date parser. |
|
Returns a relative delta parser. |
|
Returns a valid date range parser. |
|
Returns a date parser. |
|
Returns a datetime parser. |
|
Returns a time parser. |
|
Returns an stdnum parser. |
|
Returns a fileinput parser. |
|
Returns a decimal parser. |
|
Generic range field parser. |
|
Returns an integer range parser. |
|
Returns a decimal range parser. |
|
Returns a currency parser. |
|
Returns a pricing parser. |
|
Returns a marker box: |
|
Returns a radio parser: |
|
Returns a checkbox parser: |
|
A fieldset title parser. Fieldset titles are just like headings in |
|
Returns a field identifier parser: |
|
Returns parser for a field help comment following a field/fieldset: |
Module Contents
- form.parser.grammar.text_without(characters: str) pyparsing.Word [source]
Returns all printable text without the given characters.
- form.parser.grammar.matches(character: str) Callable[[ParseResults], bool] [source]
Returns true if the given character matches the token.
- form.parser.grammar.literal(value: _T) Callable[[ParseResults], _T] [source]
“ Returns the given value, ignoring the tokens alltogether.
- form.parser.grammar.as_int(tokens: pyparsing.results.ParseResults) int | None [source]
Converts the token to int if possible.
- form.parser.grammar.as_joined_string(tokens: pyparsing.results.ParseResults) str [source]
Joins the given tokens into a single string.
- form.parser.grammar.as_decimal(tokens: pyparsing.results.ParseResults) decimal.Decimal | None [source]
Converts the token to decimal if possible.
- form.parser.grammar.as_uppercase(tokens: pyparsing.results.ParseResults) str | None [source]
Converts the token to uppercase if possible.
- form.parser.grammar.as_integer_range(tokens: pyparsing.results.ParseResults) range | None [source]
Converts the token to an integer range if possible.
- form.parser.grammar.as_decimal_range(tokens: pyparsing.results.ParseResults) onegov.form.utils.decimal_range | None [source]
Converts the token to a decimal range if possible.
- form.parser.grammar.as_regex(tokens: pyparsing.results.ParseResults) Pattern[str] | None [source]
Converts the token to a working regex if possible.
- form.parser.grammar.as_date(instring: str, loc: int, tokens: pyparsing.results.ParseResults) datetime.date | None [source]
Converts the token to a date if possible.
- form.parser.grammar.approximate_total_days(delta: dateutil.relativedelta.relativedelta) float [source]
Computes an approximate day delta from a relativedelta.
- form.parser.grammar.is_valid_date_range(instring: str, loc: int, tokens: pyparsing.results.ParseResults) pyparsing.results.ParseResults [source]
Checks if the date range is valid
- form.parser.grammar.as_relative_delta(tokens: pyparsing.results.ParseResults) dateutil.relativedelta.relativedelta | None [source]
- form.parser.grammar.unwrap(tokens: pyparsing.results.ParseResults) Any | None [source]
Unwraps grouped tokens.
- form.parser.grammar.tag(**tags: str) Callable[[ParseResults], None] [source]
Takes the given tags and applies them to the token.
- form.parser.grammar.with_whitespace_inside(expr: pyparsing.ParserElement) pyparsing.Combine [source]
Returns an expression that allows for whitespace inside, but not outside the expression.
- form.parser.grammar.enclosed_in(expr: pyparsing.ParserElement, characters: str) pyparsing.ParserElement [source]
Wraps the given expression in the given characters.
- form.parser.grammar.number_enclosed_in(characters: str) pyparsing.ParserElement [source]
Wraps numers in the given characters, making sure the result is an int.
- form.parser.grammar.choices_enclosed_in(characters: str, choices: Sequence[str]) pyparsing.ParserElement [source]
Wraps the given choices in the given characters, making sure only valid choices are possible.
- form.parser.grammar.mark_enclosed_in(characters: str) pyparsing.MatchFirst [source]
Returns a mark (x) inclosed in the given characters. For example,
mark_enclosed_in('[]')
creates an expression that accepts any of these and sets the result of the ‘x’ value to True, the others to False:[x] [ ]
- form.parser.grammar.textfield() pyparsing.ParserElement [source]
Returns a textfield parser.
Example:
____[50]
The number defines the maximum length.
Additionally, a regex may be specified to validate the field:
___/[0-9]{4}
- form.parser.grammar.textarea() pyparsing.ParserElement [source]
Returns a textarea parser.
Example:
...[5]
The number defines the number of rows.
- form.parser.grammar.code() pyparsing.ParserElement [source]
Returns a code textfield with a specified syntax.
Currently only markdown is supported.
Example:
<markdown>
- form.parser.grammar.password() pyparsing.ParserElement [source]
Returns a password field parser.
Example:
***
- form.parser.grammar.email() pyparsing.ParserElement [source]
Returns an email field parser.
Example:
@@@
- form.parser.grammar.url() pyparsing.ParserElement [source]
Returns an url field parser.
Example:
http:// https://
- form.parser.grammar.video_url() pyparsing.ParserElement [source]
Returns an video url field parser.
Example:
video-url
- form.parser.grammar.absolute_date() pyparsing.ParserElement [source]
Returns an absolute date parser.
Example:
2020.10.10
- form.parser.grammar.relative_delta() pyparsing.ParserElement [source]
Returns a relative delta parser.
Example:
+1 days -4 weeks 0 years
- form.parser.grammar.valid_date_range() pyparsing.ParserElement [source]
Returns a valid date range parser.
Example:
(..today) (2010.01.01..2020.01.01) (-2 weeks..+4 months)
- form.parser.grammar.date() pyparsing.ParserElement [source]
Returns a date parser.
Example:
YYYY.MM.DD
- form.parser.grammar.datetime() pyparsing.ParserElement [source]
Returns a datetime parser.
Example:
YYYY.MM.DD HH:MM
- form.parser.grammar.stdnum() pyparsing.ParserElement [source]
Returns an stdnum parser.
Example:
# iban
- form.parser.grammar.fileinput() pyparsing.ParserElement [source]
Returns a fileinput parser.
For all kindes of files:
*.*
For specific files:
*.pdf|*.doc
For multiple file upload:
*.pdf (multiple)
- form.parser.grammar.decimal() pyparsing.ParserElement [source]
Returns a decimal parser.
Decimal point is ‘.’.
For example:
0.00 123 11.1 -10.0
- form.parser.grammar.range_field(value_expression: pyparsing.ParserElement, parse_action: Callable[[ParseResults], Any], type: str) pyparsing.ParserElement [source]
Generic range field parser.
- form.parser.grammar.integer_range_field() pyparsing.ParserElement [source]
Returns an integer range parser.
- form.parser.grammar.decimal_range_field() pyparsing.ParserElement [source]
Returns a decimal range parser.
- form.parser.grammar.currency() pyparsing.ParserElement [source]
Returns a currency parser.
For example:
chf USD Cny
- form.parser.grammar.pricing() pyparsing.ParserElement [source]
Returns a pricing parser.
- For example:
(10.0 CHF) (0 usd!) (-0.50 Cny)
- form.parser.grammar.marker_box(characters: str) pyparsing.ParserElement [source]
Returns a marker box:
Example:
(x) Male [x] Female {x} What?
- form.parser.grammar.radio() pyparsing.ParserElement [source]
Returns a radio parser:
- Example::
(x) Male ( ) Female
- form.parser.grammar.checkbox() pyparsing.ParserElement [source]
Returns a checkbox parser:
- Example::
[x] Male [ ] Female
- form.parser.grammar.fieldset_title() pyparsing.ParserElement [source]
A fieldset title parser. Fieldset titles are just like headings in markdown:
# My header
It’s possible to have an empty fieldset title (to disable a fieldset):
# …