| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- import string
- class TOMLChar(str):
- def __init__(self, c):
- super().__init__()
- if len(self) > 1:
- raise ValueError("A TOML character must be of length 1")
- BARE = string.ascii_letters + string.digits + "-_"
- KV = "= \t"
- NUMBER = string.digits + "+-_.e"
- SPACES = " \t"
- NL = "\n\r"
- WS = SPACES + NL
- def is_bare_key_char(self) -> bool:
- """
- Whether the character is a valid bare key name or not.
- """
- return self in self.BARE
- def is_kv_sep(self) -> bool:
- """
- Whether the character is a valid key/value separator or not.
- """
- return self in self.KV
- def is_int_float_char(self) -> bool:
- """
- Whether the character if a valid integer or float value character or not.
- """
- return self in self.NUMBER
- def is_ws(self) -> bool:
- """
- Whether the character is a whitespace character or not.
- """
- return self in self.WS
- def is_nl(self) -> bool:
- """
- Whether the character is a new line character or not.
- """
- return self in self.NL
- def is_spaces(self) -> bool:
- """
- Whether the character is a space or not
- """
- return self in self.SPACES
|