pub fn encode(nickname: &str) -> Cow<'_, str>Expand description
Encodes a nickname for safe use in URLs
This function ensures that nicknames containing special characters, spaces, or non-ASCII characters are properly URL-encoded. ASCII nicknames without control characters are returned as-is for better performance.
§Arguments
nickname- The player nickname to URL-encode
§Returns
Returns Cow<'_, str> -
Cow::Borrowedif the nickname is already URL-safe (ASCII without control characters)Cow::Ownedwith URL-encoded string if encoding is required
§Examples
use ddapi_rs::prelude::encode;
// Safe ASCII nicknames are returned without changes
assert_eq!(encode("Player1"), "Player1");
assert_eq!(encode("abc_XYZ"), "abc_XYZ");
// Characters requiring encoding are properly handled
assert_eq!(encode("Player Server"), "Player%20Server");
assert_eq!(encode("Player@Server"), "Player%40Server");
assert_eq!(encode("玩家"), "%E7%8E%A9%E5%AE%B6");
assert_eq!(encode("emoji🎮"), "emoji%F0%9F%8E%AE");
// Special cases
assert_eq!(encode(""), "");
assert_eq!(encode("a b"), "a%20b");