aboutsummaryrefslogtreecommitdiff
path: root/src/utils/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/__init__.py')
-rw-r--r--src/utils/__init__.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/utils/__init__.py b/src/utils/__init__.py
index 188b8e9c..24b3d71d 100644
--- a/src/utils/__init__.py
+++ b/src/utils/__init__.py
@@ -189,3 +189,13 @@ def is_ip(s: str) -> bool:
except ValueError:
return False
return True
+
+def encode_truncate(s: str, encoding: str, byte_max: int) -> bytes:
+ encoded = b""
+ for character in s:
+ encoded_character = character.encode(encoding)
+ if len(encoded + encoded_character) > byte_max:
+ break
+ else:
+ encoded += encoded_character
+ return encoded