Encodes the input string into a MetaString object. Args: input_string (str): The string to encode. Returns: MetaString: The encoded MetaString object.
(self, input_string: str, encodings: List[Encoding] = None)
| 269 | self.special_char2 = special_char2 |
| 270 | |
| 271 | def encode(self, input_string: str, encodings: List[Encoding] = None) -> MetaString: |
| 272 | """ |
| 273 | Encodes the input string into a MetaString object. |
| 274 | |
| 275 | Args: |
| 276 | input_string (str): The string to encode. |
| 277 | |
| 278 | Returns: |
| 279 | MetaString: The encoded MetaString object. |
| 280 | """ |
| 281 | # Long meta string than _METASTRING_NUM_CHARS_LIMIT is not allowed. |
| 282 | assert len(input_string) < _METASTRING_NUM_CHARS_LIMIT, "Long meta string than _METASTRING_NUM_CHARS_LIMIT is not allowed." |
| 283 | |
| 284 | if not input_string: |
| 285 | return MetaString( |
| 286 | input_string, |
| 287 | Encoding.UTF_8, |
| 288 | bytes(), |
| 289 | 0, |
| 290 | self.special_char1, |
| 291 | self.special_char2, |
| 292 | ) |
| 293 | |
| 294 | encoding = self.compute_encoding(input_string, encodings) |
| 295 | return self.encode_with_encoding(input_string, encoding) |
| 296 | |
| 297 | def encode_with_encoding(self, input_string: str, encoding: Encoding) -> MetaString: |
| 298 | """ |