diff --git a/cgosling/cgosling_8h.html b/cgosling/cgosling_8h.html index f1146ccc..59ed816d 100644 --- a/cgosling/cgosling_8h.html +++ b/cgosling/cgosling_8h.html @@ -93,10 +93,10 @@ - - + + @@ -490,7 +490,7 @@

-

Defined if cgosling is built with legacy tor-provider support

+

Defined if cgosling is built with arti-client tor-provider support Defined if cgosling is built with legacy tor-provider support

diff --git a/cgosling/cgosling_8h_source.html b/cgosling/cgosling_8h_source.html index d079dcbb..098129d6 100644 --- a/cgosling/cgosling_8h_source.html +++ b/cgosling/cgosling_8h_source.html @@ -92,209 +92,210 @@
25 # include <sys/socket.h>
26 #endif
27 
-
31  #define GOSLING_HAVE_MOCK_TOR_PROVIDER 1
+
31  #undef GOSLING_HAVE_ARTI_CLIENT_TOR_PROVIDER
35  #define GOSLING_HAVE_LEGACY_TOR_PROVIDER 1
-
36 
-
45 #define TARGET_ADDRESS_STRING_SIZE 260
-
49 #define V3_ONION_SERVICE_ID_STRING_LENGTH 56
-
53 #define V3_ONION_SERVICE_ID_STRING_SIZE 57
-
57 #define ED25519_PRIVATE_KEYBLOB_BASE64_LENGTH 88
-
61 #define ED25519_PRIVATE_KEY_KEYBLOB_HEADER_LENGTH 11
-
65 #define ED25519_PRIVATE_KEY_KEYBLOB_LENGTH 99
-
69 #define ED25519_PRIVATE_KEY_KEYBLOB_SIZE 100
-
73 #define X25519_PRIVATE_KEY_BASE64_LENGTH 44
-
77 #define X25519_PRIVATE_KEY_BASE64_SIZE 45
-
81 #define X25519_PUBLIC_KEY_BASE32_LENGTH 52
-
85 #define X25519_PUBLIC_KEY_BASE32_SIZE 53
-
86 
-
90 enum {
- - - - - - - - - - - -
140 };
-
141 
- -
149 typedef struct gosling_context gosling_context;
- -
157 typedef struct gosling_error gosling_error;
- -
165 typedef struct gosling_library gosling_library;
- - - - - - - - - - -
209 typedef size_t gosling_circuit_token_t;
-
210 
-
223 typedef void(*gosling_tor_bootstrap_status_received_callback_t)(gosling_context* context, uint32_t progress, const char* tag, size_t tag_length, const char* summary, size_t summary_length);
- -
239 typedef void(*gosling_tor_log_received_callback_t)(gosling_context* context, const char* line, size_t line_length);
-
254 typedef size_t(*gosling_identity_client_handshake_challenge_response_size_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const uint8_t* challenge_buffer, size_t challenge_buffer_size);
-
271 typedef void(*gosling_identity_client_handshake_build_challenge_response_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const uint8_t* challenge_buffer, size_t challenge_buffer_size, uint8_t* out_challenge_response_buffer, size_t out_challenge_response_buffer_size);
-
289 typedef void(*gosling_identity_client_handshake_completed_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id* identity_service_id, const gosling_v3_onion_service_id* endpoint_service_id, const char* endpoint_name, size_t endpoint_name_length, const gosling_x25519_private_key* client_auth_private_key);
- - - - -
342 typedef bool(*gosling_identity_server_endpoint_supported_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const char* endpoint_name, size_t endpoint_name_length);
- -
364 typedef void(*gosling_identity_server_handshake_build_challenge_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, uint8_t* out_challenge_buffer, size_t out_challenge_buffer_size);
-
378 typedef bool(*gosling_identity_server_handshake_verify_challenge_response_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const uint8_t* challenge_response_buffer, size_t challenge_response_buffer_size);
-
396 typedef void(*gosling_identity_server_handshake_completed_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_ed25519_private_key* endpoint_private_key, const char* endpoint_name, size_t endpoint_name_length, const gosling_v3_onion_service_id* client_service_id, const gosling_x25519_public_key* client_auth_public_key);
-
414 typedef void(*gosling_identity_server_handshake_rejected_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, bool client_allowed, bool client_requested_endpoint_valid, bool client_proof_signature_valid, bool client_auth_signature_valid, bool challenge_response_valid);
- -
439 typedef void(*gosling_endpoint_client_handshake_completed_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id* endpoint_service_id, const char* channel_name, size_t channel_name_length, gosling_tcp_socket_t stream);
- -
460 typedef void(*gosling_endpoint_server_published_callback_t)(gosling_context* context, const gosling_v3_onion_service_id* endpoint_service_id, const char* endpoint_name, size_t endpoint_name_length);
- -
485 typedef bool(*gosling_endpoint_server_channel_supported_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id* client_service_id, const char* channel_name, size_t channel_name_length);
-
502 typedef void(*gosling_endpoint_server_handshake_completed_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id* endpoint_service_id, const gosling_v3_onion_service_id* client_service_id, const char* channel_name, size_t channel_name_length, gosling_tcp_socket_t stream);
-
516 typedef void(*gosling_endpoint_server_handshake_rejected_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, bool client_allowed, bool client_requested_channel_valid, bool client_proof_signature_valid);
- -
526 
-
527 #ifdef __cplusplus
-
528 extern "C" {
-
529 #endif // __cplusplus
+
39  #define GOSLING_HAVE_MOCK_TOR_PROVIDER 1
+
40 
+
49 #define TARGET_ADDRESS_STRING_SIZE 260
+
53 #define V3_ONION_SERVICE_ID_STRING_LENGTH 56
+
57 #define V3_ONION_SERVICE_ID_STRING_SIZE 57
+
61 #define ED25519_PRIVATE_KEYBLOB_BASE64_LENGTH 88
+
65 #define ED25519_PRIVATE_KEY_KEYBLOB_HEADER_LENGTH 11
+
69 #define ED25519_PRIVATE_KEY_KEYBLOB_LENGTH 99
+
73 #define ED25519_PRIVATE_KEY_KEYBLOB_SIZE 100
+
77 #define X25519_PRIVATE_KEY_BASE64_LENGTH 44
+
81 #define X25519_PRIVATE_KEY_BASE64_SIZE 45
+
85 #define X25519_PUBLIC_KEY_BASE32_LENGTH 52
+
89 #define X25519_PUBLIC_KEY_BASE32_SIZE 53
+
90 
+
94 enum {
+ + + + + + + + + + + +
144 };
+
145 
+ +
153 typedef struct gosling_context gosling_context;
+ +
161 typedef struct gosling_error gosling_error;
+ +
169 typedef struct gosling_library gosling_library;
+ + + + + + + + + + +
213 typedef size_t gosling_circuit_token_t;
+
214 
+
227 typedef void(*gosling_tor_bootstrap_status_received_callback_t)(gosling_context* context, uint32_t progress, const char* tag, size_t tag_length, const char* summary, size_t summary_length);
+ +
243 typedef void(*gosling_tor_log_received_callback_t)(gosling_context* context, const char* line, size_t line_length);
+
258 typedef size_t(*gosling_identity_client_handshake_challenge_response_size_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const uint8_t* challenge_buffer, size_t challenge_buffer_size);
+
275 typedef void(*gosling_identity_client_handshake_build_challenge_response_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const uint8_t* challenge_buffer, size_t challenge_buffer_size, uint8_t* out_challenge_response_buffer, size_t out_challenge_response_buffer_size);
+
293 typedef void(*gosling_identity_client_handshake_completed_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id* identity_service_id, const gosling_v3_onion_service_id* endpoint_service_id, const char* endpoint_name, size_t endpoint_name_length, const gosling_x25519_private_key* client_auth_private_key);
+ + + + +
346 typedef bool(*gosling_identity_server_endpoint_supported_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const char* endpoint_name, size_t endpoint_name_length);
+ +
368 typedef void(*gosling_identity_server_handshake_build_challenge_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, uint8_t* out_challenge_buffer, size_t out_challenge_buffer_size);
+
382 typedef bool(*gosling_identity_server_handshake_verify_challenge_response_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const uint8_t* challenge_response_buffer, size_t challenge_response_buffer_size);
+
400 typedef void(*gosling_identity_server_handshake_completed_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_ed25519_private_key* endpoint_private_key, const char* endpoint_name, size_t endpoint_name_length, const gosling_v3_onion_service_id* client_service_id, const gosling_x25519_public_key* client_auth_public_key);
+
418 typedef void(*gosling_identity_server_handshake_rejected_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, bool client_allowed, bool client_requested_endpoint_valid, bool client_proof_signature_valid, bool client_auth_signature_valid, bool challenge_response_valid);
+ +
443 typedef void(*gosling_endpoint_client_handshake_completed_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id* endpoint_service_id, const char* channel_name, size_t channel_name_length, gosling_tcp_socket_t stream);
+ +
464 typedef void(*gosling_endpoint_server_published_callback_t)(gosling_context* context, const gosling_v3_onion_service_id* endpoint_service_id, const char* endpoint_name, size_t endpoint_name_length);
+ +
489 typedef bool(*gosling_endpoint_server_channel_supported_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id* client_service_id, const char* channel_name, size_t channel_name_length);
+
506 typedef void(*gosling_endpoint_server_handshake_completed_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id* endpoint_service_id, const gosling_v3_onion_service_id* client_service_id, const char* channel_name, size_t channel_name_length, gosling_tcp_socket_t stream);
+
520 typedef void(*gosling_endpoint_server_handshake_rejected_callback_t)(gosling_context* context, gosling_handshake_handle_t handshake_handle, bool client_allowed, bool client_requested_channel_valid, bool client_proof_signature_valid);
+
530 
- - - - - - - - - - - - - - - - - - - - - - - - - - -
749 void gosling_context_init(gosling_context** out_context, gosling_tor_provider* in_tor_provider, uint16_t identity_port, uint16_t endpoint_port, const gosling_ed25519_private_key* identity_private_key, gosling_error** error);
- - - -
783 void gosling_context_start_endpoint_server(gosling_context* context, const gosling_ed25519_private_key* endpoint_private_key, const char* endpoint_name, size_t endpoint_name_length, const gosling_v3_onion_service_id* client_identity, const gosling_x25519_public_key* client_auth_public_key, gosling_error** error);
- -
802 gosling_handshake_handle_t gosling_context_begin_identity_handshake(gosling_context* context, const gosling_v3_onion_service_id* identity_service_id, const char* endpoint_name, size_t endpoint_name_length, gosling_error** error);
- -
822 gosling_handshake_handle_t gosling_context_begin_endpoint_handshake(gosling_context* context, const gosling_v3_onion_service_id* endpoint_service_id, const gosling_x25519_private_key* client_auth_private_key, const char* channel_name, size_t channel_name_length, gosling_error** error);
- - - - - - - - - - - -
911 void gosling_ed25519_private_key_from_keyblob(gosling_ed25519_private_key** out_private_key, const char* key_blob, size_t key_blob_length, gosling_error** error);
-
923 void gosling_ed25519_private_key_to_keyblob(const gosling_ed25519_private_key* private_key, char* out_key_blob, size_t key_blob_size, gosling_error** error);
-
933 void gosling_x25519_private_key_from_base64(gosling_x25519_private_key** out_private_key, const char* base64, size_t base64_length, gosling_error** error);
-
944 void gosling_x25519_private_key_to_base64(const gosling_x25519_private_key* private_key, char* out_base64, size_t base64_size, gosling_error** error);
-
954 void gosling_x25519_public_key_from_base32(gosling_x25519_public_key** out_public_key, const char* base32, size_t base32_length, gosling_error** error);
-
965 void gosling_x25519_public_key_to_base32(const gosling_x25519_public_key* public_key, char* out_base32, size_t base32_size, gosling_error** error);
-
976 void gosling_v3_onion_service_id_from_string(gosling_v3_onion_service_id** out_service_id, const char* service_id_string, size_t service_id_string_length, gosling_error** error);
- -
996 void gosling_v3_onion_service_id_to_string(const gosling_v3_onion_service_id* service_id, char* out_service_id_string, size_t service_id_string_size, gosling_error** error);
-
1006 bool gosling_string_is_valid_v3_onion_service_id(const char* service_id_string, size_t service_id_string_length, gosling_error** error);
-
1014 const char* gosling_error_get_message(const gosling_error* error);
-
1022 void gosling_error_clone(gosling_error** out_error, const gosling_error* orig_error, gosling_error** error);
- - - - - - - - -
1082 void gosling_proxy_config_new_socks4(gosling_proxy_config** out_proxy_config, const gosling_target_address* proxy_address, gosling_error** error);
-
1096 void gosling_proxy_config_new_socks5(gosling_proxy_config** out_proxy_config, const gosling_target_address* proxy_address, const char* username, size_t username_length, const char* password, size_t password_length, gosling_error** error);
-
1110 void gosling_proxy_config_new_https(gosling_proxy_config** out_proxy_config, const gosling_target_address* proxy_address, const char* username, size_t username_length, const char* password, size_t password_length, gosling_error** error);
-
1124 void gosling_pluggable_transport_config_new(gosling_pluggable_transport_config** out_pluggable_transport_config, const char* transports, size_t transports_length, const char* path_to_binary, size_t path_to_binary_length, gosling_error** error);
-
1134 void gosling_pluggable_transport_config_add_cmdline_option(gosling_pluggable_transport_config* pluggable_transport_config, const char* option, size_t option_length, gosling_error** error);
-
1145 void gosling_bridge_line_from_string(gosling_bridge_line** out_bridge_line, const char* bridge_line, size_t bridge_line_length, gosling_error** error);
- -
1165 void gosling_tor_provider_config_new_bundled_legacy_client_config(gosling_tor_provider_config** out_tor_provider_config, const char* tor_bin_path, size_t tor_bin_path_length, const char* tor_working_directory, size_t tor_working_directory_length, gosling_error** error);
-
1179 void gosling_tor_provider_config_new_system_legacy_client_config(gosling_tor_provider_config** out_tor_provider_config, const gosling_ip_address* tor_socks_host, uint16_t tor_socks_port, const gosling_ip_address* tor_control_host, uint16_t tor_control_port, const char* tor_control_passwd, size_t tor_control_passwd_length, gosling_error** error);
- -
1204 void gosling_tor_provider_config_set_allowed_ports(gosling_tor_provider_config* tor_provider_config, const uint16_t* allowed_ports, size_t allowed_ports_count, gosling_error** error);
- - - - - -
1261 void gosling_ip_address_clone(gosling_ip_address** out_ip_address, const gosling_ip_address* ip_address, gosling_error** error);
-
1269 void gosling_target_address_clone(gosling_target_address** out_target_address, const gosling_target_address* target_address, gosling_error** error);
-
1279 void gosling_context_connect(gosling_context* context, gosling_tcp_socket_t* out_tcp_socket, const gosling_target_address* target_address, gosling_circuit_token_t circuit_token, gosling_error** error);
-
1290 void gosling_ip_address_from_ipv4(gosling_ip_address** out_ip_address, uint8_t a, uint8_t b, uint8_t c, uint8_t d, gosling_error** error);
-
1305 void gosling_ip_address_from_ipv6(gosling_ip_address** out_ip_address, uint16_t a, uint16_t b, uint16_t c, uint16_t d, uint16_t e, uint16_t f, uint16_t g, uint16_t h, gosling_error** error);
-
1314 void gosling_target_address_from_ip_address(gosling_target_address** out_target_address, const gosling_ip_address* ip_address, uint16_t port, gosling_error** error);
-
1325 void gosling_target_address_from_domain(gosling_target_address** out_target_address, const char* domain, size_t domain_length, uint16_t port, gosling_error** error);
-
1334 void gosling_target_address_from_v3_onion_service_id(gosling_target_address** out_target_address, const gosling_v3_onion_service_id* service_id, uint16_t port, gosling_error** error);
-
1343 void gosling_target_address_from_string(gosling_target_address** out_target_address, const char* target_address, size_t target_address_length, gosling_error** error);
-
1353 void gosling_target_address_to_string(const gosling_target_address* target_address, char* out_target_address_string, size_t target_address_string_size, gosling_error** error);
- - -
1369 
-
1370 #ifdef __cplusplus
-
1371 }
-
1372 #endif // __cplusplus
+
531 #ifdef __cplusplus
+
532 extern "C" {
+
533 #endif // __cplusplus
+
534 
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
753 void gosling_context_init(gosling_context** out_context, gosling_tor_provider* in_tor_provider, uint16_t identity_port, uint16_t endpoint_port, const gosling_ed25519_private_key* identity_private_key, gosling_error** error);
+ + + +
787 void gosling_context_start_endpoint_server(gosling_context* context, const gosling_ed25519_private_key* endpoint_private_key, const char* endpoint_name, size_t endpoint_name_length, const gosling_v3_onion_service_id* client_identity, const gosling_x25519_public_key* client_auth_public_key, gosling_error** error);
+ +
806 gosling_handshake_handle_t gosling_context_begin_identity_handshake(gosling_context* context, const gosling_v3_onion_service_id* identity_service_id, const char* endpoint_name, size_t endpoint_name_length, gosling_error** error);
+ +
826 gosling_handshake_handle_t gosling_context_begin_endpoint_handshake(gosling_context* context, const gosling_v3_onion_service_id* endpoint_service_id, const gosling_x25519_private_key* client_auth_private_key, const char* channel_name, size_t channel_name_length, gosling_error** error);
+ + + + + + + + + + + +
915 void gosling_ed25519_private_key_from_keyblob(gosling_ed25519_private_key** out_private_key, const char* key_blob, size_t key_blob_length, gosling_error** error);
+
927 void gosling_ed25519_private_key_to_keyblob(const gosling_ed25519_private_key* private_key, char* out_key_blob, size_t key_blob_size, gosling_error** error);
+
937 void gosling_x25519_private_key_from_base64(gosling_x25519_private_key** out_private_key, const char* base64, size_t base64_length, gosling_error** error);
+
948 void gosling_x25519_private_key_to_base64(const gosling_x25519_private_key* private_key, char* out_base64, size_t base64_size, gosling_error** error);
+
958 void gosling_x25519_public_key_from_base32(gosling_x25519_public_key** out_public_key, const char* base32, size_t base32_length, gosling_error** error);
+
969 void gosling_x25519_public_key_to_base32(const gosling_x25519_public_key* public_key, char* out_base32, size_t base32_size, gosling_error** error);
+
980 void gosling_v3_onion_service_id_from_string(gosling_v3_onion_service_id** out_service_id, const char* service_id_string, size_t service_id_string_length, gosling_error** error);
+ +
1000 void gosling_v3_onion_service_id_to_string(const gosling_v3_onion_service_id* service_id, char* out_service_id_string, size_t service_id_string_size, gosling_error** error);
+
1010 bool gosling_string_is_valid_v3_onion_service_id(const char* service_id_string, size_t service_id_string_length, gosling_error** error);
+
1018 const char* gosling_error_get_message(const gosling_error* error);
+
1026 void gosling_error_clone(gosling_error** out_error, const gosling_error* orig_error, gosling_error** error);
+ + + + + + + + +
1086 void gosling_proxy_config_new_socks4(gosling_proxy_config** out_proxy_config, const gosling_target_address* proxy_address, gosling_error** error);
+
1100 void gosling_proxy_config_new_socks5(gosling_proxy_config** out_proxy_config, const gosling_target_address* proxy_address, const char* username, size_t username_length, const char* password, size_t password_length, gosling_error** error);
+
1114 void gosling_proxy_config_new_https(gosling_proxy_config** out_proxy_config, const gosling_target_address* proxy_address, const char* username, size_t username_length, const char* password, size_t password_length, gosling_error** error);
+
1128 void gosling_pluggable_transport_config_new(gosling_pluggable_transport_config** out_pluggable_transport_config, const char* transports, size_t transports_length, const char* path_to_binary, size_t path_to_binary_length, gosling_error** error);
+
1138 void gosling_pluggable_transport_config_add_cmdline_option(gosling_pluggable_transport_config* pluggable_transport_config, const char* option, size_t option_length, gosling_error** error);
+
1149 void gosling_bridge_line_from_string(gosling_bridge_line** out_bridge_line, const char* bridge_line, size_t bridge_line_length, gosling_error** error);
+ +
1169 void gosling_tor_provider_config_new_bundled_legacy_client_config(gosling_tor_provider_config** out_tor_provider_config, const char* tor_bin_path, size_t tor_bin_path_length, const char* tor_working_directory, size_t tor_working_directory_length, gosling_error** error);
+
1183 void gosling_tor_provider_config_new_system_legacy_client_config(gosling_tor_provider_config** out_tor_provider_config, const gosling_ip_address* tor_socks_host, uint16_t tor_socks_port, const gosling_ip_address* tor_control_host, uint16_t tor_control_port, const char* tor_control_passwd, size_t tor_control_passwd_length, gosling_error** error);
+ +
1208 void gosling_tor_provider_config_set_allowed_ports(gosling_tor_provider_config* tor_provider_config, const uint16_t* allowed_ports, size_t allowed_ports_count, gosling_error** error);
+ + + + + +
1265 void gosling_ip_address_clone(gosling_ip_address** out_ip_address, const gosling_ip_address* ip_address, gosling_error** error);
+
1273 void gosling_target_address_clone(gosling_target_address** out_target_address, const gosling_target_address* target_address, gosling_error** error);
+
1283 void gosling_context_connect(gosling_context* context, gosling_tcp_socket_t* out_tcp_socket, const gosling_target_address* target_address, gosling_circuit_token_t circuit_token, gosling_error** error);
+
1294 void gosling_ip_address_from_ipv4(gosling_ip_address** out_ip_address, uint8_t a, uint8_t b, uint8_t c, uint8_t d, gosling_error** error);
+
1309 void gosling_ip_address_from_ipv6(gosling_ip_address** out_ip_address, uint16_t a, uint16_t b, uint16_t c, uint16_t d, uint16_t e, uint16_t f, uint16_t g, uint16_t h, gosling_error** error);
+
1318 void gosling_target_address_from_ip_address(gosling_target_address** out_target_address, const gosling_ip_address* ip_address, uint16_t port, gosling_error** error);
+
1329 void gosling_target_address_from_domain(gosling_target_address** out_target_address, const char* domain, size_t domain_length, uint16_t port, gosling_error** error);
+
1338 void gosling_target_address_from_v3_onion_service_id(gosling_target_address** out_target_address, const gosling_v3_onion_service_id* service_id, uint16_t port, gosling_error** error);
+
1347 void gosling_target_address_from_string(gosling_target_address** out_target_address, const char* target_address, size_t target_address_length, gosling_error** error);
+
1357 void gosling_target_address_to_string(const gosling_target_address* target_address, char* out_target_address_string, size_t target_address_string_size, gosling_error** error);
+ +
1373 
-
1374 #endif // LIBCGOSLING_H
-
void(* gosling_identity_client_handshake_failed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_error *error)
Definition: cgosling.h:298
+
1374 #ifdef __cplusplus
+
1375 }
+
1376 #endif // __cplusplus
+
1377 
+
1378 #endif // LIBCGOSLING_H
+
void(* gosling_identity_client_handshake_failed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_error *error)
Definition: cgosling.h:302
void gosling_target_address_from_string(gosling_target_address **out_target_address, const char *target_address, size_t target_address_length, gosling_error **error)
-
@ ed25519_private_key_keyblob_header_length
Definition: cgosling.h:115
-
@ ed25519_private_key_keyblob_length
Definition: cgosling.h:119
-
@ v3_onion_service_id_string_length
Definition: cgosling.h:103
-
@ x25519_private_key_base64_length
Definition: cgosling.h:127
-
@ x25519_public_key_base32_size
Definition: cgosling.h:139
-
@ v3_onion_service_id_string_size
Definition: cgosling.h:107
-
@ target_address_string_size
Definition: cgosling.h:99
-
@ ed25519_private_keyblob_base64_length
Definition: cgosling.h:111
-
@ x25519_private_key_base64_size
Definition: cgosling.h:131
-
@ x25519_public_key_base32_length
Definition: cgosling.h:135
-
@ ed25519_private_key_keyblob_size
Definition: cgosling.h:123
-
struct gosling_x25519_public_key gosling_x25519_public_key
Definition: cgosling.h:197
+
@ ed25519_private_key_keyblob_header_length
Definition: cgosling.h:119
+
@ ed25519_private_key_keyblob_length
Definition: cgosling.h:123
+
@ v3_onion_service_id_string_length
Definition: cgosling.h:107
+
@ x25519_private_key_base64_length
Definition: cgosling.h:131
+
@ x25519_public_key_base32_size
Definition: cgosling.h:143
+
@ v3_onion_service_id_string_size
Definition: cgosling.h:111
+
@ target_address_string_size
Definition: cgosling.h:103
+
@ ed25519_private_keyblob_base64_length
Definition: cgosling.h:115
+
@ x25519_private_key_base64_size
Definition: cgosling.h:135
+
@ x25519_public_key_base32_length
Definition: cgosling.h:139
+
@ ed25519_private_key_keyblob_size
Definition: cgosling.h:127
+
struct gosling_x25519_public_key gosling_x25519_public_key
Definition: cgosling.h:201
gosling_circuit_token_t gosling_context_generate_circuit_token(gosling_context *context, gosling_error **error)
void gosling_context_set_identity_server_handshake_failed_callback(gosling_context *context, gosling_identity_server_handshake_failed_callback_t callback, gosling_error **error)
-
void(* gosling_endpoint_server_handshake_failed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_error *error)
Definition: cgosling.h:525
+
void(* gosling_endpoint_server_handshake_failed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_error *error)
Definition: cgosling.h:529
void gosling_context_connect(gosling_context *context, gosling_tcp_socket_t *out_tcp_socket, const gosling_target_address *target_address, gosling_circuit_token_t circuit_token, gosling_error **error)
-
int gosling_tcp_socket_t
Definition: cgosling.h:205
-
size_t gosling_circuit_token_t
Definition: cgosling.h:209
+
int gosling_tcp_socket_t
Definition: cgosling.h:209
+
size_t gosling_circuit_token_t
Definition: cgosling.h:213
void gosling_x25519_public_key_from_base32(gosling_x25519_public_key **out_public_key, const char *base32, size_t base32_length, gosling_error **error)
-
void(* gosling_identity_server_handshake_started_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle)
Definition: cgosling.h:314
+
void(* gosling_identity_server_handshake_started_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle)
Definition: cgosling.h:318
void gosling_tor_provider_config_set_proxy_config(gosling_tor_provider_config *tor_provider_config, const gosling_proxy_config *proxy_config, gosling_error **error)
const char * gosling_error_get_message(const gosling_error *error)
void gosling_error_clone(gosling_error **out_error, const gosling_error *orig_error, gosling_error **error)
-
struct gosling_ed25519_private_key gosling_ed25519_private_key
Definition: cgosling.h:153
+
struct gosling_ed25519_private_key gosling_ed25519_private_key
Definition: cgosling.h:157
void gosling_proxy_config_new_socks4(gosling_proxy_config **out_proxy_config, const gosling_target_address *proxy_address, gosling_error **error)
void gosling_v3_onion_service_id_from_ed25519_private_key(gosling_v3_onion_service_id **out_service_id, const gosling_ed25519_private_key *ed25519_private_key, gosling_error **error)
void gosling_proxy_config_new_https(gosling_proxy_config **out_proxy_config, const gosling_target_address *proxy_address, const char *username, size_t username_length, const char *password, size_t password_length, gosling_error **error)
@@ -305,36 +306,36 @@
void gosling_target_address_free(gosling_target_address *in_target_address)
void gosling_library_init(gosling_library **out_library, gosling_error **error)
void gosling_v3_onion_service_id_to_string(const gosling_v3_onion_service_id *service_id, char *out_service_id_string, size_t service_id_string_size, gosling_error **error)
-
bool(* gosling_endpoint_server_channel_supported_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *client_service_id, const char *channel_name, size_t channel_name_length)
Definition: cgosling.h:485
+
bool(* gosling_endpoint_server_channel_supported_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *client_service_id, const char *channel_name, size_t channel_name_length)
Definition: cgosling.h:489
void gosling_v3_onion_service_id_from_string(gosling_v3_onion_service_id **out_service_id, const char *service_id_string, size_t service_id_string_length, gosling_error **error)
void gosling_v3_onion_service_id_free(gosling_v3_onion_service_id *in_service_id)
-
struct gosling_proxy_config gosling_proxy_config
Definition: cgosling.h:173
+
struct gosling_proxy_config gosling_proxy_config
Definition: cgosling.h:177
void gosling_x25519_private_key_clone(gosling_x25519_private_key **out_private_key, const gosling_x25519_private_key *private_key, gosling_error **error)
void gosling_context_set_endpoint_server_channel_supported_callback(gosling_context *context, gosling_endpoint_server_channel_supported_callback_t callback, gosling_error **error)
-
void(* gosling_identity_server_handshake_failed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_error *error)
Definition: cgosling.h:423
-
struct gosling_ip_address gosling_ip_address
Definition: cgosling.h:161
-
struct gosling_context gosling_context
Definition: cgosling.h:149
-
void(* gosling_identity_client_handshake_build_challenge_response_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const uint8_t *challenge_buffer, size_t challenge_buffer_size, uint8_t *out_challenge_response_buffer, size_t out_challenge_response_buffer_size)
Definition: cgosling.h:271
+
void(* gosling_identity_server_handshake_failed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_error *error)
Definition: cgosling.h:427
+
struct gosling_ip_address gosling_ip_address
Definition: cgosling.h:165
+
struct gosling_context gosling_context
Definition: cgosling.h:153
+
void(* gosling_identity_client_handshake_build_challenge_response_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const uint8_t *challenge_buffer, size_t challenge_buffer_size, uint8_t *out_challenge_response_buffer, size_t out_challenge_response_buffer_size)
Definition: cgosling.h:275
void gosling_context_set_endpoint_server_handshake_started_callback(gosling_context *context, gosling_endpoint_server_handshake_started_callback_t callback, gosling_error **error)
void gosling_tor_provider_config_new_bundled_legacy_client_config(gosling_tor_provider_config **out_tor_provider_config, const char *tor_bin_path, size_t tor_bin_path_length, const char *tor_working_directory, size_t tor_working_directory_length, gosling_error **error)
void gosling_context_set_endpoint_server_published_callback(gosling_context *context, gosling_endpoint_server_published_callback_t callback, gosling_error **error)
void gosling_library_free(gosling_library *in_library)
-
void(* gosling_endpoint_client_handshake_completed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *endpoint_service_id, const char *channel_name, size_t channel_name_length, gosling_tcp_socket_t stream)
Definition: cgosling.h:439
+
void(* gosling_endpoint_client_handshake_completed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *endpoint_service_id, const char *channel_name, size_t channel_name_length, gosling_tcp_socket_t stream)
Definition: cgosling.h:443
void gosling_proxy_config_free(gosling_proxy_config *in_proxy_config)
-
bool(* gosling_identity_server_endpoint_supported_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const char *endpoint_name, size_t endpoint_name_length)
Definition: cgosling.h:342
+
bool(* gosling_identity_server_endpoint_supported_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const char *endpoint_name, size_t endpoint_name_length)
Definition: cgosling.h:346
void gosling_ip_address_clone(gosling_ip_address **out_ip_address, const gosling_ip_address *ip_address, gosling_error **error)
-
void(* gosling_endpoint_client_handshake_failed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_error *error)
Definition: cgosling.h:448
+
void(* gosling_endpoint_client_handshake_failed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_error *error)
Definition: cgosling.h:452
void gosling_context_stop_identity_server(gosling_context *context, gosling_error **error)
void gosling_tor_provider_free(gosling_tor_provider *in_tor_provider)
void gosling_context_set_tor_bootstrap_completed_callback(gosling_context *context, gosling_tor_bootstrap_completed_callback_t callback, gosling_error **error)
void gosling_tor_provider_config_add_pluggable_transport_config(gosling_tor_provider_config *tor_provider_config, const gosling_pluggable_transport_config *pluggable_transport_config, gosling_error **error)
-
void(* gosling_endpoint_server_handshake_completed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *endpoint_service_id, const gosling_v3_onion_service_id *client_service_id, const char *channel_name, size_t channel_name_length, gosling_tcp_socket_t stream)
Definition: cgosling.h:502
+
void(* gosling_endpoint_server_handshake_completed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *endpoint_service_id, const gosling_v3_onion_service_id *client_service_id, const char *channel_name, size_t channel_name_length, gosling_tcp_socket_t stream)
Definition: cgosling.h:506
void gosling_context_set_identity_server_challenge_size_callback(gosling_context *context, gosling_identity_server_handshake_challenge_size_callback_t callback, gosling_error **error)
-
size_t gosling_handshake_handle_t
Definition: cgosling.h:201
-
struct gosling_bridge_line gosling_bridge_line
Definition: cgosling.h:145
+
size_t gosling_handshake_handle_t
Definition: cgosling.h:205
+
struct gosling_bridge_line gosling_bridge_line
Definition: cgosling.h:149
void gosling_context_set_identity_client_handshake_completed_callback(gosling_context *context, gosling_identity_client_handshake_completed_callback_t callback, gosling_error **error)
void gosling_context_set_identity_server_handshake_rejected_callback(gosling_context *context, gosling_identity_server_handshake_rejected_callback_t callback, gosling_error **error)
-
void(* gosling_identity_server_handshake_rejected_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, bool client_allowed, bool client_requested_endpoint_valid, bool client_proof_signature_valid, bool client_auth_signature_valid, bool challenge_response_valid)
Definition: cgosling.h:414
+
void(* gosling_identity_server_handshake_rejected_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, bool client_allowed, bool client_requested_endpoint_valid, bool client_proof_signature_valid, bool client_auth_signature_valid, bool challenge_response_valid)
Definition: cgosling.h:418
void gosling_pluggable_transport_config_free(gosling_pluggable_transport_config *in_pluggable_transport_config)
void gosling_x25519_public_key_free(gosling_x25519_public_key *in_public_key)
void gosling_bridge_line_free(gosling_bridge_line *in_bridge_line)
@@ -342,7 +343,7 @@
void gosling_x25519_private_key_to_base64(const gosling_x25519_private_key *private_key, char *out_base64, size_t base64_size, gosling_error **error)
void gosling_context_set_identity_server_published_callback(gosling_context *context, gosling_identity_server_published_callback_t callback, gosling_error **error)
void gosling_ed25519_private_key_free(gosling_ed25519_private_key *in_private_key)
-
struct gosling_target_address gosling_target_address
Definition: cgosling.h:177
+
struct gosling_target_address gosling_target_address
Definition: cgosling.h:181
void gosling_pluggable_transport_config_new(gosling_pluggable_transport_config **out_pluggable_transport_config, const char *transports, size_t transports_length, const char *path_to_binary, size_t path_to_binary_length, gosling_error **error)
void gosling_ed25519_private_key_generate(gosling_ed25519_private_key **out_private_key, gosling_error **error)
void gosling_context_set_identity_client_challenge_response_size_callback(gosling_context *context, gosling_identity_client_handshake_challenge_response_size_callback_t callback, gosling_error **error)
@@ -356,63 +357,63 @@
void gosling_context_set_identity_server_build_challenge_callback(gosling_context *context, gosling_identity_server_handshake_build_challenge_callback_t callback, gosling_error **error)
void gosling_target_address_from_v3_onion_service_id(gosling_target_address **out_target_address, const gosling_v3_onion_service_id *service_id, uint16_t port, gosling_error **error)
void gosling_ed25519_private_key_from_keyblob(gosling_ed25519_private_key **out_private_key, const char *key_blob, size_t key_blob_length, gosling_error **error)
-
void(* gosling_identity_server_published_callback_t)(gosling_context *context)
Definition: cgosling.h:306
+
void(* gosling_identity_server_published_callback_t)(gosling_context *context)
Definition: cgosling.h:310
void gosling_context_set_identity_client_build_challenge_response_callback(gosling_context *context, gosling_identity_client_handshake_build_challenge_response_callback_t callback, gosling_error **error)
-
struct gosling_pluggable_transport_config gosling_pluggable_transport_config
Definition: cgosling.h:169
-
bool(* gosling_identity_server_handshake_client_allowed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *client_service_id)
Definition: cgosling.h:326
+
struct gosling_pluggable_transport_config gosling_pluggable_transport_config
Definition: cgosling.h:173
+
bool(* gosling_identity_server_handshake_client_allowed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *client_service_id)
Definition: cgosling.h:330
void gosling_x25519_private_key_free(gosling_x25519_private_key *in_private_key)
-
void(* gosling_identity_client_handshake_completed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *identity_service_id, const gosling_v3_onion_service_id *endpoint_service_id, const char *endpoint_name, size_t endpoint_name_length, const gosling_x25519_private_key *client_auth_private_key)
Definition: cgosling.h:289
+
void(* gosling_identity_client_handshake_completed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_v3_onion_service_id *identity_service_id, const gosling_v3_onion_service_id *endpoint_service_id, const char *endpoint_name, size_t endpoint_name_length, const gosling_x25519_private_key *client_auth_private_key)
Definition: cgosling.h:293
void gosling_context_set_tor_bootstrap_status_received_callback(gosling_context *context, gosling_tor_bootstrap_status_received_callback_t callback, gosling_error **error)
void gosling_ip_address_free(gosling_ip_address *in_ip_address)
void gosling_x25519_private_key_from_base64(gosling_x25519_private_key **out_private_key, const char *base64, size_t base64_length, gosling_error **error)
void gosling_context_set_endpoint_client_handshake_failed_callback(gosling_context *context, gosling_endpoint_client_handshake_failed_callback_t callback, gosling_error **error)
-
void(* gosling_tor_bootstrap_completed_callback_t)(gosling_context *context)
Definition: cgosling.h:230
+
void(* gosling_tor_bootstrap_completed_callback_t)(gosling_context *context)
Definition: cgosling.h:234
void gosling_ed25519_private_key_to_keyblob(const gosling_ed25519_private_key *private_key, char *out_key_blob, size_t key_blob_size, gosling_error **error)
void gosling_context_set_endpoint_server_handshake_failed_callback(gosling_context *context, gosling_endpoint_server_handshake_failed_callback_t callback, gosling_error **error)
void gosling_target_address_clone(gosling_target_address **out_target_address, const gosling_target_address *target_address, gosling_error **error)
void gosling_x25519_public_key_clone(gosling_x25519_public_key **out_public_key, const gosling_x25519_public_key *public_key, gosling_error **error)
-
struct gosling_tor_provider gosling_tor_provider
Definition: cgosling.h:181
+
struct gosling_tor_provider gosling_tor_provider
Definition: cgosling.h:185
void gosling_tor_provider_config_add_bridge_line(gosling_tor_provider_config *tor_provider_config, const gosling_bridge_line *bridge_line, gosling_error **error)
void gosling_context_poll_events(gosling_context *context, gosling_error **error)
void gosling_context_set_identity_server_handshake_started_callback(gosling_context *context, gosling_identity_server_handshake_started_callback_t callback, gosling_error **error)
void gosling_ip_address_from_ipv6(gosling_ip_address **out_ip_address, uint16_t a, uint16_t b, uint16_t c, uint16_t d, uint16_t e, uint16_t f, uint16_t g, uint16_t h, gosling_error **error)
void gosling_tor_provider_config_free(gosling_tor_provider_config *in_tor_provider_config)
void gosling_context_set_endpoint_client_handshake_completed_callback(gosling_context *context, gosling_endpoint_client_handshake_completed_callback_t callback, gosling_error **error)
-
void(* gosling_endpoint_server_published_callback_t)(gosling_context *context, const gosling_v3_onion_service_id *endpoint_service_id, const char *endpoint_name, size_t endpoint_name_length)
Definition: cgosling.h:460
+
void(* gosling_endpoint_server_published_callback_t)(gosling_context *context, const gosling_v3_onion_service_id *endpoint_service_id, const char *endpoint_name, size_t endpoint_name_length)
Definition: cgosling.h:464
void gosling_context_free(gosling_context *in_context)
bool gosling_string_is_valid_v3_onion_service_id(const char *service_id_string, size_t service_id_string_length, gosling_error **error)
void gosling_tor_provider_config_new_system_legacy_client_config(gosling_tor_provider_config **out_tor_provider_config, const gosling_ip_address *tor_socks_host, uint16_t tor_socks_port, const gosling_ip_address *tor_control_host, uint16_t tor_control_port, const char *tor_control_passwd, size_t tor_control_passwd_length, gosling_error **error)
void gosling_context_set_endpoint_server_handshake_rejected_callback(gosling_context *context, gosling_endpoint_server_handshake_rejected_callback_t callback, gosling_error **error)
void gosling_context_release_circuit_token(gosling_context *context, gosling_circuit_token_t circuit_token, gosling_error **error)
void gosling_context_stop_endpoint_server(gosling_context *context, const gosling_ed25519_private_key *endpoint_private_key, gosling_error **error)
-
bool(* gosling_identity_server_handshake_verify_challenge_response_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const uint8_t *challenge_response_buffer, size_t challenge_response_buffer_size)
Definition: cgosling.h:378
-
struct gosling_tor_provider_config gosling_tor_provider_config
Definition: cgosling.h:185
-
void(* gosling_endpoint_server_handshake_started_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle)
Definition: cgosling.h:468
+
bool(* gosling_identity_server_handshake_verify_challenge_response_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const uint8_t *challenge_response_buffer, size_t challenge_response_buffer_size)
Definition: cgosling.h:382
+
struct gosling_tor_provider_config gosling_tor_provider_config
Definition: cgosling.h:189
+
void(* gosling_endpoint_server_handshake_started_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle)
Definition: cgosling.h:472
void gosling_proxy_config_new_socks5(gosling_proxy_config **out_proxy_config, const gosling_target_address *proxy_address, const char *username, size_t username_length, const char *password, size_t password_length, gosling_error **error)
void gosling_ip_address_from_ipv4(gosling_ip_address **out_ip_address, uint8_t a, uint8_t b, uint8_t c, uint8_t d, gosling_error **error)
-
void(* gosling_identity_server_handshake_completed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_ed25519_private_key *endpoint_private_key, const char *endpoint_name, size_t endpoint_name_length, const gosling_v3_onion_service_id *client_service_id, const gosling_x25519_public_key *client_auth_public_key)
Definition: cgosling.h:396
+
void(* gosling_identity_server_handshake_completed_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const gosling_ed25519_private_key *endpoint_private_key, const char *endpoint_name, size_t endpoint_name_length, const gosling_v3_onion_service_id *client_service_id, const gosling_x25519_public_key *client_auth_public_key)
Definition: cgosling.h:400
void gosling_pluggable_transport_config_add_cmdline_option(gosling_pluggable_transport_config *pluggable_transport_config, const char *option, size_t option_length, gosling_error **error)
void gosling_context_set_identity_server_handshake_completed_callback(gosling_context *context, gosling_identity_server_handshake_completed_callback_t callback, gosling_error **error)
void gosling_bridge_line_from_string(gosling_bridge_line **out_bridge_line, const char *bridge_line, size_t bridge_line_length, gosling_error **error)
void gosling_x25519_public_key_to_base32(const gosling_x25519_public_key *public_key, char *out_base32, size_t base32_size, gosling_error **error)
-
void(* gosling_identity_server_handshake_build_challenge_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, uint8_t *out_challenge_buffer, size_t out_challenge_buffer_size)
Definition: cgosling.h:364
-
size_t(* gosling_identity_client_handshake_challenge_response_size_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const uint8_t *challenge_buffer, size_t challenge_buffer_size)
Definition: cgosling.h:254
+
void(* gosling_identity_server_handshake_build_challenge_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, uint8_t *out_challenge_buffer, size_t out_challenge_buffer_size)
Definition: cgosling.h:368
+
size_t(* gosling_identity_client_handshake_challenge_response_size_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, const uint8_t *challenge_buffer, size_t challenge_buffer_size)
Definition: cgosling.h:258
void gosling_ed25519_private_key_clone(gosling_ed25519_private_key **out_private_key, const gosling_ed25519_private_key *private_key, gosling_error **error)
-
size_t(* gosling_identity_server_handshake_challenge_size_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle)
Definition: cgosling.h:352
-
void(* gosling_tor_log_received_callback_t)(gosling_context *context, const char *line, size_t line_length)
Definition: cgosling.h:239
-
struct gosling_library gosling_library
Definition: cgosling.h:165
+
size_t(* gosling_identity_server_handshake_challenge_size_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle)
Definition: cgosling.h:356
+
void(* gosling_tor_log_received_callback_t)(gosling_context *context, const char *line, size_t line_length)
Definition: cgosling.h:243
+
struct gosling_library gosling_library
Definition: cgosling.h:169
void gosling_context_start_endpoint_server(gosling_context *context, const gosling_ed25519_private_key *endpoint_private_key, const char *endpoint_name, size_t endpoint_name_length, const gosling_v3_onion_service_id *client_identity, const gosling_x25519_public_key *client_auth_public_key, gosling_error **error)
void gosling_v3_onion_service_id_clone(gosling_v3_onion_service_id **out_service_id, const gosling_v3_onion_service_id *service_id, gosling_error **error)
void gosling_context_set_identity_client_handshake_failed_callback(gosling_context *context, gosling_identity_client_handshake_failed_callback_t callback, gosling_error **error)
void gosling_context_bootstrap_tor(gosling_context *context, gosling_error **error)
-
struct gosling_x25519_private_key gosling_x25519_private_key
Definition: cgosling.h:193
+
struct gosling_x25519_private_key gosling_x25519_private_key
Definition: cgosling.h:197
void gosling_tor_provider_from_tor_provider_config(gosling_tor_provider **out_tor_provider, const gosling_tor_provider_config *tor_provider_config, gosling_error **error)
-
void(* gosling_tor_bootstrap_status_received_callback_t)(gosling_context *context, uint32_t progress, const char *tag, size_t tag_length, const char *summary, size_t summary_length)
Definition: cgosling.h:223
+
void(* gosling_tor_bootstrap_status_received_callback_t)(gosling_context *context, uint32_t progress, const char *tag, size_t tag_length, const char *summary, size_t summary_length)
Definition: cgosling.h:227
void gosling_context_set_identity_server_client_allowed_callback(gosling_context *context, gosling_identity_server_handshake_client_allowed_callback_t callback, gosling_error **error)
void gosling_target_address_from_ip_address(gosling_target_address **out_target_address, const gosling_ip_address *ip_address, uint16_t port, gosling_error **error)
-
struct gosling_v3_onion_service_id gosling_v3_onion_service_id
Definition: cgosling.h:189
-
struct gosling_error gosling_error
Definition: cgosling.h:157
-
void(* gosling_endpoint_server_handshake_rejected_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, bool client_allowed, bool client_requested_channel_valid, bool client_proof_signature_valid)
Definition: cgosling.h:516
+
struct gosling_v3_onion_service_id gosling_v3_onion_service_id
Definition: cgosling.h:193
+
struct gosling_error gosling_error
Definition: cgosling.h:161
+
void(* gosling_endpoint_server_handshake_rejected_callback_t)(gosling_context *context, gosling_handshake_handle_t handshake_handle, bool client_allowed, bool client_requested_channel_valid, bool client_proof_signature_valid)
Definition: cgosling.h:520
gosling_handshake_handle_t gosling_context_begin_endpoint_handshake(gosling_context *context, const gosling_v3_onion_service_id *endpoint_service_id, const gosling_x25519_private_key *client_auth_private_key, const char *channel_name, size_t channel_name_length, gosling_error **error)
void gosling_context_set_identity_server_endpoint_supported_callback(gosling_context *context, gosling_identity_server_endpoint_supported_callback_t callback, gosling_error **error)
void gosling_context_set_identity_server_verify_challenge_response_callback(gosling_context *context, gosling_identity_server_handshake_verify_challenge_response_callback_t callback, gosling_error **error)
diff --git a/cgosling/cgosling_8hpp_source.html b/cgosling/cgosling_8hpp_source.html index f0d13ccc..23786a8b 100644 --- a/cgosling/cgosling_8hpp_source.html +++ b/cgosling/cgosling_8hpp_source.html @@ -325,45 +325,45 @@
258 };
259 } // namespace std
-
struct gosling_x25519_public_key gosling_x25519_public_key
Definition: cgosling.h:197
-
#define X25519_PRIVATE_KEY_BASE64_SIZE
Definition: cgosling.h:77
+
struct gosling_x25519_public_key gosling_x25519_public_key
Definition: cgosling.h:201
+
#define X25519_PRIVATE_KEY_BASE64_SIZE
Definition: cgosling.h:81
const char * gosling_error_get_message(const gosling_error *error)
-
struct gosling_ed25519_private_key gosling_ed25519_private_key
Definition: cgosling.h:153
+
struct gosling_ed25519_private_key gosling_ed25519_private_key
Definition: cgosling.h:157
void gosling_error_free(gosling_error *error)
void gosling_target_address_free(gosling_target_address *in_target_address)
void gosling_v3_onion_service_id_to_string(const gosling_v3_onion_service_id *service_id, char *out_service_id_string, size_t service_id_string_size, gosling_error **error)
void gosling_v3_onion_service_id_free(gosling_v3_onion_service_id *in_service_id)
-
struct gosling_proxy_config gosling_proxy_config
Definition: cgosling.h:173
-
struct gosling_ip_address gosling_ip_address
Definition: cgosling.h:161
-
struct gosling_context gosling_context
Definition: cgosling.h:149
+
struct gosling_proxy_config gosling_proxy_config
Definition: cgosling.h:177
+
struct gosling_ip_address gosling_ip_address
Definition: cgosling.h:165
+
struct gosling_context gosling_context
Definition: cgosling.h:153
void gosling_library_free(gosling_library *in_library)
void gosling_proxy_config_free(gosling_proxy_config *in_proxy_config)
void gosling_tor_provider_free(gosling_tor_provider *in_tor_provider)
-
#define TARGET_ADDRESS_STRING_SIZE
Definition: cgosling.h:45
-
struct gosling_bridge_line gosling_bridge_line
Definition: cgosling.h:145
+
#define TARGET_ADDRESS_STRING_SIZE
Definition: cgosling.h:49
+
struct gosling_bridge_line gosling_bridge_line
Definition: cgosling.h:149
void gosling_pluggable_transport_config_free(gosling_pluggable_transport_config *in_pluggable_transport_config)
-
#define V3_ONION_SERVICE_ID_STRING_SIZE
Definition: cgosling.h:53
+
#define V3_ONION_SERVICE_ID_STRING_SIZE
Definition: cgosling.h:57
void gosling_x25519_public_key_free(gosling_x25519_public_key *in_public_key)
void gosling_bridge_line_free(gosling_bridge_line *in_bridge_line)
void gosling_x25519_private_key_to_base64(const gosling_x25519_private_key *private_key, char *out_base64, size_t base64_size, gosling_error **error)
void gosling_ed25519_private_key_free(gosling_ed25519_private_key *in_private_key)
-
struct gosling_target_address gosling_target_address
Definition: cgosling.h:177
+
struct gosling_target_address gosling_target_address
Definition: cgosling.h:181
void gosling_target_address_to_string(const gosling_target_address *target_address, char *out_target_address_string, size_t target_address_string_size, gosling_error **error)
-
struct gosling_pluggable_transport_config gosling_pluggable_transport_config
Definition: cgosling.h:169
+
struct gosling_pluggable_transport_config gosling_pluggable_transport_config
Definition: cgosling.h:173
void gosling_x25519_private_key_free(gosling_x25519_private_key *in_private_key)
void gosling_ip_address_free(gosling_ip_address *in_ip_address)
void gosling_ed25519_private_key_to_keyblob(const gosling_ed25519_private_key *private_key, char *out_key_blob, size_t key_blob_size, gosling_error **error)
-
#define ED25519_PRIVATE_KEY_KEYBLOB_SIZE
Definition: cgosling.h:69
-
struct gosling_tor_provider gosling_tor_provider
Definition: cgosling.h:181
+
#define ED25519_PRIVATE_KEY_KEYBLOB_SIZE
Definition: cgosling.h:73
+
struct gosling_tor_provider gosling_tor_provider
Definition: cgosling.h:185
void gosling_tor_provider_config_free(gosling_tor_provider_config *in_tor_provider_config)
void gosling_context_free(gosling_context *in_context)
-
#define X25519_PUBLIC_KEY_BASE32_SIZE
Definition: cgosling.h:85
-
struct gosling_tor_provider_config gosling_tor_provider_config
Definition: cgosling.h:185
+
#define X25519_PUBLIC_KEY_BASE32_SIZE
Definition: cgosling.h:89
+
struct gosling_tor_provider_config gosling_tor_provider_config
Definition: cgosling.h:189
void gosling_x25519_public_key_to_base32(const gosling_x25519_public_key *public_key, char *out_base32, size_t base32_size, gosling_error **error)
-
struct gosling_library gosling_library
Definition: cgosling.h:165
-
struct gosling_x25519_private_key gosling_x25519_private_key
Definition: cgosling.h:193
-
struct gosling_v3_onion_service_id gosling_v3_onion_service_id
Definition: cgosling.h:189
-
struct gosling_error gosling_error
Definition: cgosling.h:157
+
struct gosling_library gosling_library
Definition: cgosling.h:169
+
struct gosling_x25519_private_key gosling_x25519_private_key
Definition: cgosling.h:197
+
struct gosling_v3_onion_service_id gosling_v3_onion_service_id
Definition: cgosling.h:193
+
struct gosling_error gosling_error
Definition: cgosling.h:161
Definition: cgosling.hpp:40
out_unique_ptr & operator=(out_unique_ptr &&)=delete
diff --git a/cgosling/globals.html b/cgosling/globals.html index 4ac9c56b..583a2f22 100644 --- a/cgosling/globals.html +++ b/cgosling/globals.html @@ -64,24 +64,24 @@
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:

- e -

Attempts to convert self into T using TryInto<T>. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where - V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> ErasedDestructor for T
where + V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where + S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/crates/gosling/context/enum.Error.html b/crates/gosling/context/enum.Error.html index bd5e6d9b..61e69751 100644 --- a/crates/gosling/context/enum.Error.html +++ b/crates/gosling/context/enum.Error.html @@ -1,4 +1,4 @@ -Error in gosling::context - Rust

Enum gosling::context::Error

source ·
pub enum Error {
+Error in gosling::context - Rust

Enum gosling::context::Error

source ·
pub enum Error {
     InvalidArgument(String),
     TorNotConnected(),
     HandshakeHandleNotFound(HandshakeHandle),
@@ -24,11 +24,26 @@
 
§

IdentityServerError(Error)

Failure ocurred in incoming identity handshake

§

EndpointClientError(Error)

Failure ocurred in outgoing endpoint handshake

§

EndpointServerError(Error)

Failure ocurred in incoming endpoint handshake

-

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(source: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(source: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(source: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where - Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where + T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can +then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be +further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot +generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot +generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where + T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be +further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
§

impl<E> ErrorReport for E
where + E: Error + 'static,

§

fn report(&self) -> Report<ReportHelper<'_>>

Return an object that displays the error and its causes
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where @@ -44,7 +59,9 @@ Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

-
source§

impl<T, U> Into<U> for T
where +

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

@@ -125,6 +142,10 @@ T: Display + ?Sized,
source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
§

impl<T> TryConv for T

§

fn try_conv<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where - U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where - V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> ErasedDestructor for T
where + U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> TryIntoSlug for T
where + T: ToString + ?Sized,

§

fn try_into_slug(&self) -> Result<Slug, BadSlug>

Convert self into a Slug, if it has the right syntax
§

impl<V, T> VZip<V> for T
where + V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where + S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/crates/gosling/context/struct.Context.html b/crates/gosling/context/struct.Context.html index c49b7ba2..498efc1f 100644 --- a/crates/gosling/context/struct.Context.html +++ b/crates/gosling/context/struct.Context.html @@ -1,4 +1,4 @@ -Context in gosling::context - Rust

Struct gosling::context::Context

source ·
pub struct Context { /* private fields */ }
Expand description

The gosling protocol implementation.

+Context in gosling::context - Rust

Struct gosling::context::Context

source ·
pub struct Context { /* private fields */ }
Expand description

The gosling protocol implementation.

The Context object provides various methods for starting and progressing identity and endpoint handshakes. The general usage pattern developers will follow is to construct a Context object, connect to the Tor Network using Context::bootstrap(), optionally start an identity or endpoint servers, and listen for and handle incoming identity and endpoint clients using Context::update() and the various associated methods. Depending on the application’s requirements, the developer can also initiate identity and endpoint handshakes as necessary.

The Gosling Protocol specification can be found here:

    @@ -143,10 +143,22 @@
    §Paramet
source

pub fn release_circuit_token(&mut self, circuit_token: CircuitToken)

A direct pass-through to the underlying TorProvider’s TorProvider::release_token() method.

source

pub fn update(&mut self) -> Result<VecDeque<ContextEvent>, Error>

This function updates the Context’s underlying TorProvider, handles new handshakes requests, and updates in-progress handshakes. This function needs to be regularly called to process the returned ContextEvents.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where - Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where + Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where + T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can +then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be +further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot +generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot +generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where @@ -162,7 +174,9 @@
§Paramet Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

-
source§

impl<T, U> Into<U> for T
where +

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an +Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

@@ -243,5 +257,8 @@
§Paramet Self: TryInto<T>,
Attempts to convert self into T using TryInto<T>. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where - V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> ErasedDestructor for T
where + V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where + S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a +[WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where T: 'static,

§

impl<T> MaybeSendSync for T

\ No newline at end of file diff --git a/crates/search-index.js b/crates/search-index.js index 9228b472..2350e84c 100644 --- a/crates/search-index.js +++ b/crates/search-index.js @@ -1,7 +1,7 @@ var searchIndex = new Map(JSON.parse('[\ -["gosling",{"t":"CFGPPPPPPPPPPGIPPPPPPPPPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO","n":["context","Context","ContextEvent","EndpointClientError","EndpointClientHandshakeCompleted","EndpointClientHandshakeFailed","EndpointServerChannelRequestReceived","EndpointServerError","EndpointServerHandshakeCompleted","EndpointServerHandshakeFailed","EndpointServerHandshakeRejected","EndpointServerHandshakeStarted","EndpointServerPublished","Error","HandshakeHandle","HandshakeHandleNotFound","HonkRpc","IdentityClientChallengeReceived","IdentityClientError","IdentityClientHandshakeCompleted","IdentityClientHandshakeFailed","IdentityServerChallengeResponseReceived","IdentityServerEndpointRequestReceived","IdentityServerError","IdentityServerHandshakeCompleted","IdentityServerHandshakeFailed","IdentityServerHandshakeRejected","IdentityServerHandshakeStarted","IdentityServerPublished","IncorrectUsage","InvalidArgument","Io","TorBootstrapCompleted","TorBootstrapStatusReceived","TorCrypto","TorLogReceived","TorNotConnected","TorProvider","bootstrap","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","connect","endpoint_client_abort_handshake","endpoint_client_begin_handshake","endpoint_server_handle_channel_request_received","endpoint_server_start","endpoint_server_stop","fmt","fmt","fmt","from","from","from","from","from","from","from","generate_circuit_token","identity_client_abort_handshake","identity_client_begin_handshake","identity_client_handle_challenge_received","identity_server_handle_challenge_response_received","identity_server_handle_endpoint_request_received","identity_server_start","identity_server_stop","into","into","into","new","release_circuit_token","source","to_string","try_from","try_from","try_from","try_into","try_into","try_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","update","vzip","vzip","vzip","challenge_response","challenge_response_valid","channel_name","channel_name","client_allowed","client_allowed","client_auth_private_key","client_auth_public_key","client_auth_signature_valid","client_proof_signature_valid","client_proof_signature_valid","client_requested_channel_valid","client_requested_endpoint_valid","client_service_id","client_service_id","client_service_id","client_service_id","endpoint_challenge","endpoint_name","endpoint_name","endpoint_name","endpoint_private_key","endpoint_service_id","endpoint_service_id","endpoint_service_id","endpoint_service_id","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","identity_service_id","line","progress","reason","reason","reason","reason","requested_channel","requested_endpoint","stream","stream","summary","tag"],"q":[[0,"gosling"],[1,"gosling::context"],[92,"gosling::context::ContextEvent"],[147,"core::result"],[148,"tor_interface::tor_provider"],[149,"core::option"],[150,"tor_interface::tor_crypto"],[151,"alloc::string"],[152,"core::fmt"],[153,"std::io::error"],[154,"honk_rpc::honk_rpc"],[155,"bson::document"],[156,"alloc::boxed"],[157,"core::time"],[158,"core::error"],[159,"core::any"],[160,"alloc::collections::vec_deque"]],"i":[0,0,0,5,20,20,20,5,20,20,20,20,20,0,0,5,5,20,5,20,20,20,20,5,20,20,20,20,20,5,5,5,20,20,5,20,5,5,2,2,5,20,2,5,20,2,2,2,2,2,2,5,5,20,2,5,5,5,5,5,20,2,2,2,2,2,2,2,2,2,5,20,2,2,5,5,2,5,20,2,5,20,2,5,20,2,5,20,2,2,5,20,34,35,36,37,35,38,39,40,35,35,38,38,35,41,40,42,37,43,39,40,44,40,39,36,44,37,43,39,45,46,41,34,40,35,47,36,48,49,42,37,38,50,39,51,52,45,47,48,50,42,41,36,37,52,52],"f":"``````````````````````````````````````{{{f{bd}}}{{l{hj}}}}{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{bd}}n{Ab{A`}}}{{l{Adj}}}}{{{f{bd}}Af}{{l{hj}}}}{{{f{bd}}AhAjAl}{{l{Afj}}}}{{{f{bd}}AfAn}{{l{hj}}}}{{{f{bd}}B`AlAhBb}{{l{hj}}}}{{{f{bd}}Ah}{{l{hj}}}}{{{f{j}}{f{bBd}}}Bf}0{{{f{Bh}}{f{bBd}}}Bf}{cc{}}{Bjj}{Blj}2{Bnj}{C`j}4{{{f{bd}}}A`}<{{{f{bd}}AhAl}{{l{Afj}}}}{{{f{bd}}AfCb}{{l{hj}}}}<{{{f{bd}}AfAnAnCb}{{l{hj}}}}{{{f{bd}}}{{l{hj}}}}0{ce{}{}}00{{{Cf{Cd}}ChChCjCl{Ab{Cj}}B`}{{l{dj}}}}{{{f{bd}}A`}h}{{{f{j}}}{{Ab{{f{Cn}}}}}}{{{f{c}}}Al{}}{c{{l{e}}}{}{}}00000000{{{f{c}}}D`{}}00{{{f{bd}}}{{l{{Db{Bh}}j}}}}777```````````````````````````````````````````````````````","D":"Nl","p":[[0,"mut"],[5,"Context",1],[1,"reference"],[1,"unit"],[6,"Error",1],[6,"Result",147],[6,"TargetAddr",148],[8,"CircuitToken",148],[6,"Option",149],[5,"OnionStream",148],[8,"HandshakeHandle",1],[5,"V3OnionServiceId",150],[5,"X25519PrivateKey",150],[5,"String",151],[1,"bool"],[5,"Ed25519PrivateKey",150],[5,"X25519PublicKey",150],[5,"Formatter",152],[8,"Result",152],[6,"ContextEvent",1],[5,"Error",153],[6,"Error",150],[6,"Error",148],[6,"Error",154],[5,"Document",155],[10,"TorProvider",148],[5,"Box",156],[1,"u16"],[5,"Duration",157],[1,"i32"],[10,"Error",158],[5,"TypeId",159],[5,"VecDeque",160],[15,"IdentityServerChallengeResponseReceived",92],[15,"IdentityServerHandshakeRejected",92],[15,"EndpointClientHandshakeCompleted",92],[15,"EndpointServerHandshakeCompleted",92],[15,"EndpointServerHandshakeRejected",92],[15,"IdentityClientHandshakeCompleted",92],[15,"IdentityServerHandshakeCompleted",92],[15,"IdentityServerEndpointRequestReceived",92],[15,"EndpointServerChannelRequestReceived",92],[15,"IdentityClientChallengeReceived",92],[15,"EndpointServerPublished",92],[15,"IdentityClientHandshakeFailed",92],[15,"IdentityServerHandshakeStarted",92],[15,"IdentityServerHandshakeFailed",92],[15,"EndpointClientHandshakeFailed",92],[15,"EndpointServerHandshakeStarted",92],[15,"EndpointServerHandshakeFailed",92],[15,"TorLogReceived",92],[15,"TorBootstrapStatusReceived",92]],"r":[],"b":[[51,"impl-Display-for-Error"],[52,"impl-Debug-for-Error"],[55,"impl-From%3CError%3E-for-Error"],[56,"impl-From%3CError%3E-for-Error"],[58,"impl-From%3CError%3E-for-Error"],[59,"impl-From%3CError%3E-for-Error"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAB0ABgAoAAUANAACADgAAQA7AAEASwANAFoAAgA="}],\ +["gosling",{"t":"CFGPPPPPPPPPPGIPPPPPPPPPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO","n":["context","Context","ContextEvent","EndpointClientError","EndpointClientHandshakeCompleted","EndpointClientHandshakeFailed","EndpointServerChannelRequestReceived","EndpointServerError","EndpointServerHandshakeCompleted","EndpointServerHandshakeFailed","EndpointServerHandshakeRejected","EndpointServerHandshakeStarted","EndpointServerPublished","Error","HandshakeHandle","HandshakeHandleNotFound","HonkRpc","IdentityClientChallengeReceived","IdentityClientError","IdentityClientHandshakeCompleted","IdentityClientHandshakeFailed","IdentityServerChallengeResponseReceived","IdentityServerEndpointRequestReceived","IdentityServerError","IdentityServerHandshakeCompleted","IdentityServerHandshakeFailed","IdentityServerHandshakeRejected","IdentityServerHandshakeStarted","IdentityServerPublished","IncorrectUsage","InvalidArgument","Io","TorBootstrapCompleted","TorBootstrapStatusReceived","TorCrypto","TorLogReceived","TorNotConnected","TorProvider","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","connect","endpoint_client_abort_handshake","endpoint_client_begin_handshake","endpoint_server_handle_channel_request_received","endpoint_server_start","endpoint_server_stop","fmt","fmt","fmt","from","from","from","from","from","from","from","generate_circuit_token","identity_client_abort_handshake","identity_client_begin_handshake","identity_client_handle_challenge_received","identity_server_handle_challenge_response_received","identity_server_handle_endpoint_request_received","identity_server_start","identity_server_stop","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","new","release_circuit_token","report","source","to_string","try_from","try_from","try_from","try_into","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","update","vzip","vzip","vzip","challenge_response","challenge_response_valid","channel_name","channel_name","client_allowed","client_allowed","client_auth_private_key","client_auth_public_key","client_auth_signature_valid","client_proof_signature_valid","client_proof_signature_valid","client_requested_channel_valid","client_requested_endpoint_valid","client_service_id","client_service_id","client_service_id","client_service_id","endpoint_challenge","endpoint_name","endpoint_name","endpoint_name","endpoint_private_key","endpoint_service_id","endpoint_service_id","endpoint_service_id","endpoint_service_id","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","handle","identity_service_id","line","progress","reason","reason","reason","reason","requested_channel","requested_endpoint","stream","stream","summary","tag"],"q":[[0,"gosling"],[1,"gosling::context"],[108,"gosling::context::ContextEvent"],[163,"core::any"],[164,"core::result"],[165,"tor_interface::tor_provider"],[166,"core::option"],[167,"tor_interface::tor_crypto"],[168,"alloc::string"],[169,"core::fmt"],[170,"honk_rpc::honk_rpc"],[171,"std::io::error"],[172,"bson::document"],[173,"alloc::boxed"],[174,"alloc::sync"],[175,"alloc::rc"],[176,"core::time"],[177,"tor_error::report"],[178,"core::error"],[179,"tor_persist::slug"],[180,"alloc::collections::vec_deque"]],"i":[0,0,0,6,21,21,21,6,21,21,21,21,21,0,0,6,6,21,6,21,21,21,21,6,21,21,21,21,21,6,6,6,21,21,6,21,6,6,4,6,21,4,6,21,4,4,6,21,4,6,21,4,4,4,4,4,4,6,6,21,4,6,6,6,6,6,21,4,4,4,4,4,4,4,4,4,6,21,4,6,21,6,21,4,6,21,4,4,6,6,6,4,6,21,4,6,21,6,4,6,21,4,6,21,4,4,6,21,41,42,43,44,42,45,46,47,42,42,45,45,42,48,47,49,44,50,46,47,51,47,46,43,51,44,50,46,52,53,48,41,47,42,54,43,55,56,49,44,45,57,46,58,59,52,54,55,57,49,48,43,44,59,59],"f":"``````````````````````````````````````{{{b{c}}}{{b{d}}}{}}00{{{b{fc}}}{{b{fd}}}{}}00{{{b{fh}}}{{n{jl}}}}{{{b{c}}}{{b{e}}}{}{}}00{{{b{fc}}}{{b{fe}}}{}{}}00{{{b{fh}}A`{Ad{Ab}}}{{n{Afl}}}}{{{b{fh}}Ah}{{n{jl}}}}{{{b{fh}}AjAlAn}{{n{Ahl}}}}{{{b{fh}}AhB`}{{n{jl}}}}{{{b{fh}}BbAnAjBd}{{n{jl}}}}{{{b{fh}}Aj}{{n{jl}}}}{{{b{l}}{b{fBf}}}Bh}0{{{b{Bj}}{b{fBf}}}Bh}{cc{}}{Bll}{Bnl}2{C`l}{Cbl}4{{{b{fh}}}Ab}<{{{b{fh}}AjAn}{{n{Ahl}}}}{{{b{fh}}AhCd}{{n{jl}}}}<{{{b{fh}}AhB`B`Cd}{{n{jl}}}}{{{b{fh}}}{{n{jl}}}}0{ce{}{}}00{{{Cf{c}}}{{Cf{d}}}{}}00{{{Ch{c}}}{{Ch{d}}}{}}0{{{Cj{c}}}{{Cj{d}}}{}}00{{{Cf{Cl}}CnCnD`Db{Ad{D`}}Bb}{{n{hl}}}}{{{b{fh}}Ab}j}{{{b{c}}}{{Df{Dd}}}{}}{{{b{l}}}{{Ad{{b{Dh}}}}}}{{{b{c}}}An{}}{c{{n{e}}}{}{}}00000{{{b{c}}}{{n{DjDl}}}{}}111{{{b{c}}}Dn{}}00{{{b{fh}}}{{n{{E`{Bj}}l}}}}<<<```````````````````````````````````````````````````````","D":"Nl","p":[[1,"reference"],[10,"Any",163],[0,"mut"],[5,"Context",1],[1,"unit"],[6,"Error",1],[6,"Result",164],[6,"TargetAddr",165],[8,"CircuitToken",165],[6,"Option",166],[5,"OnionStream",165],[8,"HandshakeHandle",1],[5,"V3OnionServiceId",167],[5,"X25519PrivateKey",167],[5,"String",168],[1,"bool"],[5,"Ed25519PrivateKey",167],[5,"X25519PublicKey",167],[5,"Formatter",169],[8,"Result",169],[6,"ContextEvent",1],[6,"Error",170],[6,"Error",165],[6,"Error",167],[5,"Error",171],[5,"Document",172],[5,"Box",173],[5,"Arc",174],[5,"Rc",175],[10,"TorProvider",165],[1,"u16"],[5,"Duration",176],[1,"i32"],[5,"ReportHelper",177],[5,"Report",177],[10,"Error",178],[5,"Slug",179],[6,"BadSlug",179],[5,"TypeId",163],[5,"VecDeque",180],[15,"IdentityServerChallengeResponseReceived",108],[15,"IdentityServerHandshakeRejected",108],[15,"EndpointClientHandshakeCompleted",108],[15,"EndpointServerHandshakeCompleted",108],[15,"EndpointServerHandshakeRejected",108],[15,"IdentityClientHandshakeCompleted",108],[15,"IdentityServerHandshakeCompleted",108],[15,"IdentityServerEndpointRequestReceived",108],[15,"EndpointServerChannelRequestReceived",108],[15,"IdentityClientChallengeReceived",108],[15,"EndpointServerPublished",108],[15,"IdentityClientHandshakeFailed",108],[15,"IdentityServerHandshakeStarted",108],[15,"IdentityServerHandshakeFailed",108],[15,"EndpointClientHandshakeFailed",108],[15,"EndpointServerHandshakeStarted",108],[15,"EndpointServerHandshakeFailed",108],[15,"TorLogReceived",108],[15,"TorBootstrapStatusReceived",108]],"r":[],"b":[[57,"impl-Debug-for-Error"],[58,"impl-Display-for-Error"],[61,"impl-From%3CError%3E-for-Error"],[62,"impl-From%3CError%3E-for-Error"],[64,"impl-From%3CError%3E-for-Error"],[65,"impl-From%3CError%3E-for-Error"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAC0ACAAnAAUALgAFADoAAgA+AAEAQQABAE8ABwBZAA8AagACAA=="}],\ ["honk_rpc",{"t":"CKPPPPPSSGPGPPPPPPPPIPPPPGPPPPPPFPPPPPNNNNNNNNNNNNNNNMNNNNNNNNNHNNHHHNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNOOOOO","n":["honk_rpc","ApiSet","BsonDocumentParseFailed","BsonDocumentSizeTooLarge","BsonDocumentSizeTooSmall","BsonParseFailed","BsonWriteFailed","DEFAULT_MAX_MESSAGE_SIZE","DEFAULT_MAX_WAIT_TIME","Error","Error","ErrorCode","InvalidMaxMesageSize","MessageConversionFailed","MessageParseFailed","MessageReadTimedOut","MessageTooBig","MessageVersionIncompatible","Pending","ReaderReadFailed","RequestCookie","RequestCookieInvalid","RequestFunctionInvalid","RequestNamespaceInvalid","RequestVersionInvalid","Response","ResponseCookieInvalid","ResponseStateInvalid","Runtime","SectionIdUnknown","SectionParseFailed","SectionTooLarge","Session","Success","Unknown","UnknownErrorSectionReceived","WriterFlushFailed","WriterWriteFailed","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","client_call","client_drain_responses","client_next_response","eq","equivalent","equivalent","equivalent","exec_function","fmt","fmt","fmt","fmt","from","from","from","from","from","get_error_section_size","get_max_message_size","get_max_wait_time","get_message_overhead","get_request_section_size","get_response_section_size","into","into","into","into","into_stream","namespace","new","next_result","set_max_message_size","set_max_wait_time","source","to_string","to_string","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","update","update","vzip","vzip","vzip","vzip","cookie","cookie","cookie","error_code","result"],"q":[[0,"honk_rpc"],[1,"honk_rpc::honk_rpc"],[100,"honk_rpc::honk_rpc::Response"],[105,"bson::document"],[106,"core::result"],[107,"std::io"],[108,"core::marker"],[109,"alloc::collections::vec_deque::drain"],[110,"core::option"],[111,"bson::bson"],[112,"core::fmt"],[113,"alloc::string"],[114,"core::time"],[115,"core::error"],[116,"core::any"]],"i":[0,0,8,8,8,16,8,0,0,0,13,0,8,8,16,8,16,16,13,8,0,16,16,16,16,0,16,16,16,16,16,8,0,13,16,8,8,8,13,3,16,8,13,3,16,8,3,3,3,16,16,16,16,18,16,16,8,8,13,3,16,16,8,0,3,3,0,0,0,13,3,16,8,3,18,3,18,3,3,8,16,8,13,3,16,8,13,3,16,8,13,3,16,8,18,3,13,3,16,8,30,31,32,32,31],"f":"``````````````````````````````````````{{{b{c}}}{{b{e}}}{}{}}000{{{b{dc}}}{{b{de}}}{}{}}000{{{b{d{f{c}}}}{b{h}}{b{h}}jl}{{Ab{nA`}}}{AdAfAh}}{{{b{d{f{c}}}}}{{Al{Aj}}}{AdAfAh}}{{{b{d{f{c}}}}}{{An{Aj}}}{AdAfAh}}{{{b{B`}}{b{B`}}}Bb}{{{b{c}}{b{e}}}Bb{}{}}00{{{b{dBd}}{b{h}}jl{An{n}}}{{An{{Ab{{An{Bf}}B`}}}}}}{{{b{B`}}{b{dBh}}}Bj}0{{{b{A`}}{b{dBh}}}Bj}0{cc{}}0{jB`}11{{{An{n}}{An{Bl}}{An{Bf}}}{{Ab{BnA`}}}}{{{b{{f{c}}}}}Bn{AdAfAh}}{{{b{{f{c}}}}}C`{AdAfAh}}{{}{{Ab{BnA`}}}}{{{An{n}}{An{Bl}}Bl{An{j}}{An{l}}}{{Ab{BnA`}}}}{{{An{Bf}}}{{Ab{BnA`}}}}{ce{}{}}000{{{f{c}}}c{AdAfAh}}{{{b{Bd}}}{{b{h}}}}{c{{f{c}}}{AdAfAh}}{{{b{dBd}}}{{An{{Cb{n{Ab{{An{Bf}}B`}}}}}}}}{{{b{d{f{c}}}}j}{{Ab{CdA`}}}{AdAfAh}}{{{b{d{f{c}}}}C`}Cd{AdAfAh}}{{{b{A`}}}{{An{{b{Cf}}}}}}{{{b{c}}}Bl{}}0{c{{Ab{e}}}{}{}}0000000{{{b{c}}}Ch{}}000{{{b{dBd}}}Cd}{{{b{d{f{c}}}}{An{{b{d{Cj{{b{dBd}}}}}}}}}{{Ab{CdA`}}}{AdAfAh}}<<<<`````","D":"Hj","p":[[1,"reference"],[0,"mut"],[5,"Session",1],[1,"str"],[1,"i32"],[5,"Document",105],[8,"RequestCookie",1],[6,"Error",1],[6,"Result",106],[10,"Read",107],[10,"Write",107],[10,"Send",108],[6,"Response",1],[5,"Drain",109],[6,"Option",110],[6,"ErrorCode",1],[1,"bool"],[10,"ApiSet",1],[6,"Bson",111],[5,"Formatter",112],[8,"Result",112],[5,"String",113],[1,"usize"],[5,"Duration",114],[1,"tuple"],[1,"unit"],[10,"Error",115],[5,"TypeId",116],[1,"slice"],[15,"Pending",100],[15,"Success",100],[15,"Error",100]],"r":[],"b":[[54,"impl-Debug-for-ErrorCode"],[55,"impl-Display-for-ErrorCode"],[56,"impl-Display-for-Error"],[57,"impl-Debug-for-Error"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAACQABwABAAAAJwAHADIAAwA3AAMAPQAAAFAADgBhAAMA"}],\ -["tor_interface",{"t":"CCCCCCCCPPPPFGPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPFGPPPFGPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPGPPPFGPPPPPPPPPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOGFPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPGFPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPFGGPFPFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPSSSSSSSFFFGPPPGFSSFFSSSSSSPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPIPFGPPGFFPPFPPGGKPNNNNNMNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNOOOOO","n":["arti_client_tor_client","censorship_circumvention","legacy_tor_client","legacy_tor_version","mock_tor_client","proxy","tor_crypto","tor_provider","ArtiClientConfigBuilderError","ArtiClientError","ArtiClientOnionServiceLaunchError","ArtiClientTorAddrError","ArtiClientTorClient","Error","NotImplemented","OnionServiceConfigBuilderError","TcpListenerAcceptFailed","TcpListenerBindFailed","TcpListenerLocalAddrFailed","TcpStreamConnectFailed","TcpStreamIntoFailed","TorKeyMgrError","add_client_auth","as_any","as_any","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow_mut","borrow_mut","connect","fmt","fmt","from","from","generate_token","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","listener","new","release_token","remove_client_auth","report","source","to_string","try_from","try_from","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","type_id","type_id","update","vzip","vzip","AddressMissing","AddressParseFailed","AddressPortInvalid","BinaryPathInvalid","BridgeLine","BridgeLineError","FingerprintInvalid","FingerprintMissing","KeyValueInvalid","PluggableTransportConfig","PluggableTransportConfigError","TransportMissing","TransportNameInvalid","TransportNameInvalid","__clone_box","__clone_box","add_option","address","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_legacy_tor_setconf_value","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","fingerprint","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from_str","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","keyvalues","new","new","options","path_to_binary","report","report","to_owned","to_owned","to_string","to_string","transport","transports","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into_slug","try_into_slug","try_octets_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","AddOnionFailed","BridgeTransportNotSupported","BridgeTransportTypeMultiplyDefined","BundledTor","CircuitTokenInvalid","DelOnionFailed","Error","GetInfoNetListenersSocksFailed","GetInfoVersionFailed","LegacyControlStreamCreationFailed","LegacyTorClient","LegacyTorClientConfig","LegacyTorControllerCreationFailed","LegacyTorNotBootstrapped","LegacyTorProcessAuthenticationFailed","LegacyTorProcessCreationFailed","LegacyTorProcessTooOld","NoSocksListenersFound","NotImplemented","OnionClientAuthAddFailed","OnionClientAuthRemoveFailed","PluggableTransportBinaryNameNotUtf8Representnable","PluggableTransportConfigDirectoryCreationFailed","PluggableTransportConfigError","PluggableTransportDirectoryNameCollision","PluggableTransportSymlinkCreationFailed","PluggableTransportSymlinkRemovalFailed","SetConfDisableNetwork0Failed","SetConfFailed","SetEventsFailed","Socks5ConnectionFailed","SystemTor","TcpListenerBindFailed","TcpListenerLocalAddrFailed","WaitAsyncEventsFailed","__clone_box","add_client_auth","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","connect","fmt","fmt","fmt","from","from","from","generate_token","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","listener","new","release_token","remove_client_auth","report","source","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","update","version","vzip","vzip","vzip","allowed_ports","bridge_lines","data_directory","pluggable_transports","proxy_settings","tor_bin_path","tor_control_addr","tor_control_passwd","tor_socks_addr","Error","LegacyTorVersion","ParseError","__clone_box","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","eq","fmt","fmt","from","from","from_str","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","new","partial_cmp","report","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","try_into_slug","try_into_slug","try_octets_into","try_octets_into","type_id","type_id","vzip","vzip","ClientAlreadyBootstrapped","ClientNotBootstrapped","ConnectFailed","Error","MockTorClient","NotImplemented","OnionServiceAuthInvalid","OnionServiceNotFound","OnionServiceNotPublished","OnionServiceRequiresOnionAuth","TcpListenerBindFailed","TcpListenerLocalAddrFailed","add_client_auth","as_any","as_any","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow_mut","borrow_mut","connect","default","drop","fmt","fmt","from","from","generate_token","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","listener","new","release_token","remove_client_auth","report","source","to_string","try_from","try_from","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","type_id","type_id","update","vzip","vzip","Generic","Https","HttpsProxyConfig","ProxyConfig","ProxyConfigError","Socks4","Socks4ProxyConfig","Socks5","Socks5ProxyConfig","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","new","new","new","report","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","ConversionError","ED25519_PRIVATE_KEYBLOB_BASE64_LENGTH","ED25519_PRIVATE_KEY_KEYBLOB_HEADER_LENGTH","ED25519_PRIVATE_KEY_KEYBLOB_LENGTH","ED25519_PRIVATE_KEY_KEYBLOB_SIZE","ED25519_PRIVATE_KEY_SIZE","ED25519_PUBLIC_KEY_SIZE","ED25519_SIGNATURE_SIZE","Ed25519PrivateKey","Ed25519PublicKey","Ed25519Signature","Error","KeyInvalid","One","ParseError","SignBit","V3OnionServiceId","V3_ONION_SERVICE_ID_STRING_LENGTH","V3_ONION_SERVICE_ID_STRING_SIZE","X25519PrivateKey","X25519PublicKey","X25519_PRIVATE_KEY_BASE64_LENGTH","X25519_PRIVATE_KEY_BASE64_SIZE","X25519_PRIVATE_KEY_SIZE","X25519_PUBLIC_KEY_BASE32_LENGTH","X25519_PUBLIC_KEY_BASE32_SIZE","X25519_PUBLIC_KEY_SIZE","Zero","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_bytes","as_bytes","as_bytes","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_base32","from_base64","from_key_blob","from_private_key","from_private_key","from_private_key","from_private_x25519","from_public_key","from_raw","from_raw","from_raw","from_raw","from_raw","from_service_id","from_string","generate","generate","hash","hash","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_valid","partial_cmp","report","sign_message","sign_message","to_base32","to_base64","to_bytes","to_bytes","to_bytes","to_key_blob","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_slug","try_into_slug","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","verify","verify_x25519","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","BootstrapComplete","BootstrapStatus","CircuitToken","Domain","DomainAddr","Error","Generic","LogReceived","OnionAddr","OnionAddrV3","OnionListener","OnionService","OnionServicePublished","OnionStream","ParseFailure","Socket","TargetAddr","TorEvent","TorProvider","V3","__clone_box","__clone_box","__clone_box","__clone_box","accept","add_client_auth","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","cmp","compare","compare","compare","connect","deref","deref_mut","domain","drop","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","flush","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from_str","from_str","from_str","generate_token","hash","hash","hash","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","listener","local_addr","new","partial_cmp","partial_cmp","partial_cmp","peer_addr","port","read","release_token","remove_client_auth","report","service_id","set_nonblocking","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","try_clone","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_slug","try_into_slug","try_into_slug","try_into_slug","try_into_slug","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update","virt_port","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","write","write","line","progress","service_id","summary","tag"],"q":[[0,"tor_interface"],[8,"tor_interface::arti_client_tor_client"],[65,"tor_interface::censorship_circumvention"],[169,"tor_interface::legacy_tor_client"],[268,"tor_interface::legacy_tor_client::LegacyTorClientConfig"],[277,"tor_interface::legacy_tor_version"],[324,"tor_interface::mock_tor_client"],[381,"tor_interface::proxy"],[495,"tor_interface::tor_crypto"],[734,"tor_interface::tor_provider"],[964,"tor_interface::tor_provider::TorEvent"],[969,"core::result"],[970,"core::any"],[971,"core::option"],[972,"core::fmt"],[973,"alloc::boxed"],[974,"alloc::sync"],[975,"alloc::rc"],[976,"tokio::runtime::runtime"],[977,"std::path"],[978,"tor_error::report"],[979,"core::error"],[980,"alloc::string"],[981,"tor_persist::slug"],[982,"alloc::vec"],[983,"dyn_clone::sealed"],[984,"core::net::socket_addr"],[985,"core::cmp"],[986,"core::hash"],[987,"std::io::error"],[988,"der::error"]],"i":[0,0,0,0,0,0,0,0,14,14,14,14,0,0,14,14,14,14,14,14,14,14,2,2,14,2,14,2,2,14,2,14,2,14,14,2,14,2,2,14,2,14,2,14,2,14,2,2,2,2,14,14,14,2,14,2,14,14,2,14,2,14,2,2,14,41,41,41,40,0,0,41,41,41,0,0,41,40,41,37,38,37,38,37,40,38,41,37,40,38,41,38,37,40,38,41,37,40,38,41,37,38,37,38,37,38,38,37,40,40,38,41,41,37,40,38,41,38,37,40,38,41,37,40,38,41,37,40,38,41,37,40,38,41,38,37,38,37,37,40,41,37,38,40,41,38,37,37,40,38,41,37,40,38,41,40,41,37,40,38,41,37,40,38,41,37,40,38,41,47,47,47,46,47,47,0,47,47,47,0,0,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,46,47,47,47,46,45,45,47,46,45,47,46,45,45,47,46,45,47,46,46,46,46,45,47,47,46,45,47,46,45,45,47,46,45,47,46,45,47,46,45,47,46,45,45,45,45,47,47,46,47,45,47,46,45,47,46,47,45,47,46,45,47,46,45,45,45,47,46,74,74,74,74,74,74,75,75,75,0,0,50,48,50,48,50,48,50,48,50,48,48,48,48,48,50,50,50,48,48,50,48,50,48,50,48,50,48,48,48,50,48,50,48,50,48,50,48,50,48,50,48,50,48,50,48,54,54,54,0,0,54,54,54,54,54,54,54,53,53,54,53,54,53,53,54,53,54,53,53,53,54,54,53,54,53,53,54,53,54,53,54,53,54,53,53,53,53,54,54,54,53,54,53,54,54,53,54,53,54,53,53,54,59,58,0,0,0,58,0,58,0,55,56,57,58,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,55,56,57,58,55,56,57,58,55,56,57,58,59,59,55,56,57,58,59,55,56,57,58,58,58,58,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,55,56,57,59,55,56,57,58,59,59,55,56,57,58,59,55,56,57,58,59,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,65,0,0,0,0,0,0,0,0,0,0,0,65,64,65,0,0,0,0,0,0,0,0,0,0,0,0,64,20,60,63,5,22,4,64,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,60,22,4,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,20,60,63,5,22,4,64,20,60,63,5,22,4,64,20,60,63,5,22,4,64,64,4,4,20,60,63,5,22,4,22,22,22,4,4,4,20,65,65,60,63,5,22,4,4,20,65,60,63,5,22,4,64,64,22,5,20,60,22,4,20,4,20,60,63,5,22,60,4,20,5,22,4,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,4,4,65,20,5,22,5,20,63,5,20,20,60,63,5,22,4,64,65,4,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,65,4,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,63,63,20,65,60,63,5,22,4,64,34,34,0,10,0,0,7,34,0,0,0,10,34,0,7,10,0,0,0,70,69,70,71,10,24,68,13,24,7,69,70,71,10,34,13,24,7,69,70,71,10,34,68,13,24,7,69,70,71,10,34,13,24,7,69,70,71,10,34,69,70,71,10,69,70,71,10,69,70,71,10,69,70,71,69,70,71,68,13,13,71,24,69,70,71,69,69,69,70,70,70,71,71,71,13,7,7,69,69,70,70,71,71,10,10,34,13,24,7,7,7,7,69,70,71,10,10,34,70,71,10,68,69,70,71,13,24,7,69,70,71,10,34,13,24,7,69,70,71,10,34,13,7,69,70,71,10,34,13,24,7,69,70,71,10,34,68,13,69,69,70,71,13,71,13,68,68,7,69,24,69,70,71,10,7,69,70,71,10,13,13,24,7,69,70,71,71,10,34,13,24,7,69,70,71,10,34,7,69,70,71,10,13,24,7,69,70,71,10,34,13,24,7,69,70,71,10,34,68,69,13,24,7,69,70,71,10,34,13,13,76,77,78,77,77],"f":"``````````````````````{{{f{bd}}{f{h}}{f{j}}}{{A`{ln}}}}{{{f{c}}}{{f{Ab}}}{}}0{{{f{bc}}}{{f{bAb}}}{}}0{{{f{bd}}}{{A`{ln}}}}{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0{{{f{bd}}Ad{Ah{Af}}}{{A`{Ajn}}}}{{{f{Al}}{f{bAn}}}B`}0{cc{}}0{{{f{bd}}}Af}{ce{}{}}0{{{Bb{c}}}{{Bb{Ab}}}{}}0{{{Bd{c}}}{{Bd{Ab}}}{}}0{{{Bf{c}}}{{Bf{Ab}}}{}}0{{{f{bd}}{f{Bh}}Bj{Ah{{f{{Bn{Bl}}}}}}}{{A`{C`n}}}}{{{Bd{Cb}}{f{Cd}}}{{A`{dAl}}}}{{{f{bd}}Af}l}{{{f{bd}}{f{h}}}{{A`{ln}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{Al}}}{{Ah{{f{Cj}}}}}}{{{f{c}}}Cl{}}{c{{A`{e}}}{}{}}000{{{f{c}}}{{A`{CnD`}}}{}}11{{{f{c}}}Db{}}0{{{f{bd}}}{{A`{{Df{Dd}}n}}}}>>``````````````{{{f{c}}Dh}l{}}0{{{f{bDj}}Cl}l}{{{f{Dl}}}{{f{Dn}}}}{{{f{c}}}{{f{Ab}}}{}}000{{{f{bc}}}{{f{bAb}}}{}}000{{{f{Dl}}}Cl}{{{f{c}}}{{f{e}}}{}{}}000{{{f{bc}}}{{f{be}}}{}{}}000{{{f{Dj}}}Dj}{{{f{Dl}}}Dl}{{{f{c}}{f{be}}}l{}{}}0{{{f{c}}}l{}}0{{{f{Dl}}}{{f{Cl}}}}{{{f{Dj}}{f{bAn}}}B`}{{{f{E`}}{f{bAn}}}B`}0{{{f{Dl}}{f{bAn}}}B`}{{{f{Eb}}{f{bAn}}}B`}0{cc{}}000{{{f{Ed}}}{{A`{Dlc}}}{}}{ce{}{}}000{{{Bb{c}}}{{Bb{Ab}}}{}}000{{{Bd{c}}}{{Bd{Ab}}}{}}000{{{Bf{c}}}{{Bf{Ab}}}{}}000{{{f{Dl}}}{{f{{Df{{Ef{ClCl}}}}}}}}{{{Df{Cl}}Eh}{{A`{DjE`}}}}{{ClDnCl{Df{{Ef{ClCl}}}}}{{A`{DlEb}}}}{{{f{Dj}}}{{f{{Df{Cl}}}}}}{{{f{Dj}}}{{f{Eh}}}}{{{f{c}}}{{Ch{Cf}}}{}}0{{{f{c}}}e{}{}}0{{{f{c}}}Cl{}}0{{{f{Dl}}}{{f{Cl}}}}5{c{{A`{e}}}{}{}}0000000{{{f{c}}}{{A`{CnD`}}}{}}01111{{{f{c}}}Db{}}000????```````````````````````````````````{{{f{c}}Dh}l{}}{{{f{bEj}}{f{h}}{f{j}}}{{A`{ln}}}}{{{f{c}}}{{f{Ab}}}{}}00{{{f{bc}}}{{f{bAb}}}{}}00{{{f{bEj}}}{{A`{ln}}}}{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{El}}}El}{{{f{c}}{f{be}}}l{}{}}{{{f{c}}}l{}}{{{f{bEj}}Ad{Ah{Af}}}{{A`{Ajn}}}}{{{f{En}}{f{bAn}}}B`}0{{{f{El}}{f{bAn}}}B`}{cc{}}00{{{f{bEj}}}Af}{ce{}{}}00{{{Bb{c}}}{{Bb{Ab}}}{}}00{{{Bd{c}}}{{Bd{Ab}}}{}}00{{{Bf{c}}}{{Bf{Ab}}}{}}00{{{f{bEj}}{f{Bh}}Bj{Ah{{f{{Bn{Bl}}}}}}}{{A`{C`n}}}}{El{{A`{EjEn}}}}{{{f{bEj}}Af}l}{{{f{bEj}}{f{h}}}{{A`{ln}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{En}}}{{Ah{{f{Cj}}}}}}{{{f{c}}}e{}{}}{{{f{c}}}Cl{}}{c{{A`{e}}}{}{}}00000{{{f{c}}}{{A`{CnD`}}}{}}111{{{f{c}}}Db{}}00{{{f{bEj}}}{{A`{{Df{Dd}}n}}}}{{{f{bEj}}}F`}{ce{}{}}00````````````{{{f{c}}Dh}l{}}{{{f{c}}}{{f{Ab}}}{}}0{{{f{bc}}}{{f{bAb}}}{}}0{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0{{{f{F`}}}F`}{{{f{c}}{f{be}}}l{}{}}{{{f{c}}}l{}}{{{f{F`}}{f{F`}}}Fb}{{{f{Fd}}{f{bAn}}}B`}0{cc{}}0{{{f{Ed}}}{{A`{F`c}}}{}}<<{{{Bb{c}}}{{Bb{Ab}}}{}}0{{{Bd{c}}}{{Bd{Ab}}}{}}0{{{Bf{c}}}{{Bf{Ab}}}{}}0{{FfFfFf{Ah{Ff}}{Ah{{f{Ed}}}}}{{A`{F`Fd}}}}{{{f{F`}}{f{F`}}}{{Ah{Fh}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{c}}}e{}{}}{{{f{c}}}Cl{}}{{{f{F`}}}Cl}{c{{A`{e}}}{}{}}000{{{f{c}}}{{A`{CnD`}}}{}}011{{{f{c}}}Db{}}0{ce{}{}}0````````````{{{f{bFj}}{f{h}}{f{j}}}{{A`{ln}}}}{{{f{c}}}{{f{Ab}}}{}}0{{{f{bc}}}{{f{bAb}}}{}}0{{{f{bFj}}}{{A`{ln}}}}{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0{{{f{bFj}}Ad{Ah{Af}}}{{A`{Ajn}}}}{{}Fj}{{{f{bFj}}}l}{{{f{Fl}}{f{bAn}}}B`}0{cc{}}0{{{f{bFj}}}Af}<<{{{Bb{c}}}{{Bb{Ab}}}{}}0{{{Bd{c}}}{{Bd{Ab}}}{}}0{{{Bf{c}}}{{Bf{Ab}}}{}}0{{{f{bFj}}{f{Bh}}Bj{Ah{{f{{Bn{Bl}}}}}}}{{A`{C`n}}}}8{{{f{bFj}}Af}l}{{{f{bFj}}{f{h}}}{{A`{ln}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{Fl}}}{{Ah{{f{Cj}}}}}}{{{f{c}}}Cl{}}{c{{A`{e}}}{}{}}000{{{f{c}}}{{A`{CnD`}}}{}}11{{{f{c}}}Db{}}0{{{f{bFj}}}{{A`{{Df{Dd}}n}}}}{ce{}{}}0`````````{{{f{c}}Dh}l{}}000{{{f{c}}}{{f{Ab}}}{}}0000{{{f{bc}}}{{f{bAb}}}{}}0000{{{f{c}}}{{f{e}}}{}{}}0000{{{f{bc}}}{{f{be}}}{}{}}0000{{{f{Fn}}}Fn}{{{f{G`}}}G`}{{{f{Gb}}}Gb}{{{f{Gd}}}Gd}{{{f{c}}{f{be}}}l{}{}}000{{{f{c}}}l{}}000{{{f{Gf}}{f{bAn}}}B`}0{{{f{Fn}}{f{bAn}}}B`}{{{f{G`}}{f{bAn}}}B`}{{{f{Gb}}{f{bAn}}}B`}{{{f{Gd}}{f{bAn}}}B`}{cc{}}000{FnGd}{GbGd}2{G`Gd}{ce{}{}}0000{{{Bb{c}}}{{Bb{Ab}}}{}}0000{{{Bd{c}}}{{Bd{Ab}}}{}}0000{{{Bf{c}}}{{Bf{Ab}}}{}}0000{Ad{{A`{FnGf}}}}{{Ad{Ah{Cl}}{Ah{Cl}}}{{A`{G`Gf}}}}{{Ad{Ah{Cl}}{Ah{Cl}}}{{A`{GbGf}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{c}}}e{}{}}000{{{f{c}}}Cl{}}{c{{A`{e}}}{}{}}000000000{{{f{c}}}{{A`{CnD`}}}{}}11111{{{f{c}}}Db{}}0000<<<<<````````````````````````````{{{f{c}}Dh}l{}}000000{{{f{c}}}{{f{Ab}}}{}}0000000{{{f{bc}}}{{f{bAb}}}{}}0000000{{{f{Gh}}}{{f{{Gl{Gj}}}}}}{{{f{Bl}}}{{f{{Gl{Gj}}}}}}{{{f{h}}}{{f{{Gl{Gj}}}}}}{{{f{c}}}{{f{e}}}{}{}}0000000{{{f{bc}}}{{f{be}}}{}{}}0000000{{{f{Bh}}}Bh}{{{f{Gh}}}Gh}{{{f{Gn}}}Gn}{{{f{j}}}j}{{{f{Bl}}}Bl}{{{f{h}}}h}{{{f{H`}}}H`}{{{f{c}}{f{be}}}l{}{}}000000{{{f{c}}}l{}}0000000{{{f{h}}{f{h}}}Fh}{{{f{c}}{f{e}}}Fh{}{}}{{{f{Bh}}{f{Bh}}}Fb}{{{f{Gh}}{f{Gh}}}Fb}{{{f{Gn}}{f{Gn}}}Fb}{{{f{j}}{f{j}}}Fb}{{{f{Bl}}{f{Bl}}}Fb}{{{f{h}}{f{h}}}Fb}{{{f{c}}{f{e}}}Fb{}{}}00000{{{f{Bh}}{f{bAn}}}B`}{{{f{Hb}}{f{bAn}}}B`}0{{{f{Gh}}{f{bAn}}}B`}{{{f{Gn}}{f{bAn}}}B`}{{{f{j}}{f{bAn}}}B`}{{{f{Bl}}{f{bAn}}}B`}{{{f{h}}{f{bAn}}}B`}0{cc{}}0000000{FbH`}{{{f{Ed}}}{{A`{BlHb}}}}{{{f{Ed}}}{{A`{jHb}}}}{{{f{Ed}}}{{A`{BhHb}}}}{{{f{Bh}}}Gh}{{{f{j}}}Bl}{{{f{Bh}}}h}{{{f{j}}}{{A`{{Ef{BhH`}}Hb}}}}{{{f{Gh}}}h}{{{f{{Gl{Gj}}}}}{{A`{BhHb}}}}{{{f{{Gl{Gj}}}}}{{A`{GhHb}}}}{{{f{{Gl{Gj}}}}}{{A`{GnHb}}}}{{{f{{Gl{Gj}}}}}{{A`{jHb}}}}{{{f{{Gl{Gj}}}}}Bl}{{{f{h}}}{{A`{GhHb}}}}{{{f{Ed}}}{{A`{hHb}}}}{{}Bh}{{}j}{{{f{Bl}}{f{bc}}}lHd}{{{f{h}}{f{bc}}}lHd}{ce{}{}}0000000{{{Bb{c}}}{{Bb{Ab}}}{}}0000000{{{Bd{c}}}{{Bd{Ab}}}{}}0000000{{{Bf{c}}}{{Bf{Ab}}}{}}0000000{{{f{Ed}}}Fb}{{{f{h}}{f{h}}}{{Ah{Fh}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{Bh}}{f{{Bn{Gj}}}}}Gn}{{{f{j}}{f{{Bn{Gj}}}}}{{A`{{Ef{GnH`}}Hb}}}}{{{f{Bl}}}Cl}{{{f{j}}}Cl}{{{f{Bh}}}{{Gl{Gj}}}}{{{f{Gn}}}{{Gl{Gj}}}}{{{f{j}}}{{Gl{Gj}}}}{{{f{Bh}}}Cl}{{{f{c}}}e{}{}}000000{{{f{c}}}Cl{}}0{c{{A`{e}}}{}{}}000000000000000{{{f{c}}}{{A`{CnD`}}}{}}011111111{{{f{c}}}Db{}}0000000{{{f{Gn}}{f{{Bn{Gj}}}}{f{Gh}}}Fb}{{{f{Gn}}{f{{Bn{Gj}}}}{f{Bl}}H`}Fb}{ce{}{}}0000000````````````````````{{{f{c}}Dh}l{}}000{{{f{C`}}}{{A`{{Ah{Aj}}Hf}}}}{{{f{bHh}}{f{h}}{f{j}}}{{A`{ln}}}}{{{f{c}}}{{f{Ab}}}{}}0000000{{{f{bc}}}{{f{bAb}}}{}}0000000{{{f{bHh}}}{{A`{ln}}}}{{{f{c}}}{{f{e}}}{}{}}0000000{{{f{bc}}}{{f{be}}}{}{}}0000000{{{f{Hj}}}Hj}{{{f{Hl}}}Hl}{{{f{Hn}}}Hn}{{{f{Ad}}}Ad}{{{f{c}}{f{be}}}l{}{}}000{{{f{c}}}l{}}000{{{f{Hj}}{f{Hj}}}Fh}{{{f{Hl}}{f{Hl}}}Fh}{{{f{Hn}}{f{Hn}}}Fh}{{{f{c}}{f{e}}}Fh{}{}}00{{{f{bHh}}Ad{Ah{Af}}}{{A`{Ajn}}}}{{{f{Aj}}}{{f{c}}}{}}{{{f{bAj}}}{{f{bc}}}{}}{{{f{Hn}}}{{f{Ed}}}}{{{f{bC`}}}l}{{{f{Hj}}{f{Hj}}}Fb}{{{f{Hl}}{f{Hl}}}Fb}{{{f{Hn}}{f{Hn}}}Fb}{{{f{c}}{f{e}}}Fb{}{}}00000000{{{f{bAj}}}{{A`{lHf}}}}{{{f{n}}{f{bAn}}}B`}0{{{f{Hj}}{f{bAn}}}B`}0{{{f{Hl}}{f{bAn}}}B`}0{{{f{Hn}}{f{bAn}}}B`}0{{{f{Ad}}{f{bAn}}}B`}0{{{f{Dd}}{f{bAn}}}B`}{cc{}}00{Fln}{Aln}{Enn}333{{{Ef{hBj}}}Ad}44{{{f{Ed}}}{{A`{Hlc}}}{}}{{{f{Ed}}}{{A`{Hnc}}}{}}{{{f{Ed}}}{{A`{Adc}}}{}}{{{f{bHh}}}Af}{{{f{Hj}}{f{bc}}}lHd}{{{f{Hl}}{f{bc}}}lHd}{{{f{Hn}}{f{bc}}}lHd}{ce{}{}}0000000{{{Bb{c}}}{{Bb{Ab}}}{}}0000000{{{Bd{c}}}{{Bd{Ab}}}{}}000000{{{Bf{c}}}{{Bf{Ab}}}{}}0000000{{{f{bHh}}{f{Bh}}Bj{Ah{{f{{Bn{Bl}}}}}}}{{A`{C`n}}}}{{{f{Aj}}}{{Ah{Hl}}}}{{hBj}Hj}{{{f{Hj}}{f{Hj}}}{{Ah{Fh}}}}{{{f{Hl}}{f{Hl}}}{{Ah{Fh}}}}{{{f{Hn}}{f{Hn}}}{{Ah{Fh}}}}{{{f{Aj}}}{{Ah{Ad}}}}{{{f{Hn}}}Bj}{{{f{bAj}}{f{b{Bn{Gj}}}}}{{A`{I`Hf}}}}{{{f{bHh}}Af}l}{{{f{bHh}}{f{h}}}{{A`{ln}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{Hj}}}{{f{h}}}}{{{f{C`}}Fb}{{A`{lHf}}}}{{{f{c}}}e{}{}}000{{{f{c}}}Cl{}}0000{{{f{Aj}}}{{A`{AjHf}}}}{c{{A`{e}}}{}{}}0000{{{Ef{ClBj}}}{{A`{Hnc}}}{}}11111111111{{{f{c}}}{{A`{CnD`}}}{}}000022222222{{{f{c}}}Db{}}0000000{{{f{bHh}}}{{A`{{Df{Dd}}n}}}}{{{f{Hj}}}Bj}{ce{}{}}0000000{{{f{bc}}{f{{Bn{Gj}}}}}{{A`{lIb}}}{}}{{{f{bAj}}{f{{Bn{Gj}}}}}{{A`{I`Hf}}}}`````","D":"ALd","p":[[0,"mut"],[5,"ArtiClientTorClient",8],[1,"reference"],[5,"V3OnionServiceId",495],[5,"X25519PrivateKey",495],[1,"unit"],[6,"Error",734],[6,"Result",969],[10,"Any",970],[6,"TargetAddr",734],[8,"CircuitToken",734],[6,"Option",971],[5,"OnionStream",734],[6,"Error",8],[5,"Formatter",972],[8,"Result",972],[5,"Box",973],[5,"Arc",974],[5,"Rc",975],[5,"Ed25519PrivateKey",495],[1,"u16"],[5,"X25519PublicKey",495],[1,"slice"],[5,"OnionListener",734],[5,"Runtime",976],[5,"Path",977],[5,"ReportHelper",978],[5,"Report",978],[10,"Error",979],[5,"String",980],[5,"Slug",981],[6,"BadSlug",981],[5,"TypeId",970],[6,"TorEvent",734],[5,"Vec",982],[5,"Private",983],[5,"PluggableTransportConfig",65],[5,"BridgeLine",65],[6,"SocketAddr",984],[6,"PluggableTransportConfigError",65],[6,"BridgeLineError",65],[1,"str"],[1,"tuple"],[5,"PathBuf",977],[5,"LegacyTorClient",169],[6,"LegacyTorClientConfig",169],[6,"Error",169],[5,"LegacyTorVersion",277],[1,"bool"],[6,"Error",277],[1,"u32"],[6,"Ordering",985],[5,"MockTorClient",324],[6,"Error",324],[5,"Socks4ProxyConfig",381],[5,"Socks5ProxyConfig",381],[5,"HttpsProxyConfig",381],[6,"ProxyConfig",381],[6,"ProxyConfigError",381],[5,"Ed25519PublicKey",495],[1,"u8"],[1,"array"],[5,"Ed25519Signature",495],[6,"SignBit",495],[6,"Error",495],[10,"Hasher",986],[5,"Error",987],[10,"TorProvider",734],[5,"OnionAddrV3",734],[6,"OnionAddr",734],[5,"DomainAddr",734],[1,"usize"],[5,"Error",988],[15,"BundledTor",268],[15,"SystemTor",268],[15,"LogReceived",964],[15,"BootstrapStatus",964],[15,"OnionServicePublished",964]],"r":[],"b":[[33,"impl-Display-for-Error"],[34,"impl-Debug-for-Error"],[108,"impl-Display-for-PluggableTransportConfigError"],[109,"impl-Debug-for-PluggableTransportConfigError"],[111,"impl-Display-for-BridgeLineError"],[112,"impl-Debug-for-BridgeLineError"],[223,"impl-Debug-for-Error"],[224,"impl-Display-for-Error"],[293,"impl-Display-for-Error"],[294,"impl-Debug-for-Error"],[349,"impl-Debug-for-Error"],[350,"impl-Display-for-Error"],[426,"impl-Display-for-ProxyConfigError"],[427,"impl-Debug-for-ProxyConfigError"],[436,"impl-From%3CSocks4ProxyConfig%3E-for-ProxyConfig"],[437,"impl-From%3CHttpsProxyConfig%3E-for-ProxyConfig"],[439,"impl-From%3CSocks5ProxyConfig%3E-for-ProxyConfig"],[602,"impl-Debug-for-Error"],[603,"impl-Display-for-Error"],[608,"impl-Debug-for-V3OnionServiceId"],[609,"impl-Display-for-V3OnionServiceId"],[829,"impl-Debug-for-Error"],[830,"impl-Display-for-Error"],[831,"impl-Display-for-OnionAddrV3"],[832,"impl-Debug-for-OnionAddrV3"],[833,"impl-Debug-for-OnionAddr"],[834,"impl-Display-for-OnionAddr"],[835,"impl-Display-for-DomainAddr"],[836,"impl-Debug-for-DomainAddr"],[837,"impl-Debug-for-TargetAddr"],[838,"impl-Display-for-TargetAddr"],[843,"impl-From%3CError%3E-for-Error"],[844,"impl-From%3CError%3E-for-Error"],[845,"impl-From%3CError%3E-for-Error"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAOcCOQAJAAMADwAUACYAAAApAAYAMQAQAFAAAQBUAAcAXQANAGwABQB2AAAAewALAIwABQCUABsAsQACALUALQDmAAAA6gAJAPUAEwAKAQsAGAEPACoBAAAtAQUANAETAEoBFQBiAQAAZQEGAG0BEACHASkAtQEBALgBAAC+AQ4A0AEfAP0BAAALAhcAJgI8AGsCAAB9AgEAhwIXAKACAQCqAioA1wIHAPICBAD5Ag8ACgMhAC0DAQAwAxgATAMCAFIDAABVAwIAWQMCAGQDFgB+AwIAgwMAAIYDAACJAwgAkwMlALsDCQA="}]\ +["tor_interface",{"t":"CCCCCCCCPPPPFGPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPFGPPPFGPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPPPPGPPPFGPPPPPPPPPPPPPPPPPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOGFPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPPGFPPPPPPPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPFGGPFPFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPSSSSSSSFFFGPPPGFSSFFSSSSSSPNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNPPIPFGPPGFFPPFPPGGKPNNNNNMNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNMNNNNNNNNNNNOOOOO","n":["arti_client_tor_client","censorship_circumvention","legacy_tor_client","legacy_tor_version","mock_tor_client","proxy","tor_crypto","tor_provider","ArtiClientConfigBuilderError","ArtiClientError","ArtiClientOnionServiceLaunchError","ArtiClientTorAddrError","ArtiClientTorClient","Error","NotImplemented","OnionServiceConfigBuilderError","TcpListenerAcceptFailed","TcpListenerBindFailed","TcpListenerLocalAddrFailed","TcpStreamConnectFailed","TcpStreamIntoFailed","TorKeyMgrError","add_client_auth","as_any","as_any","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow_mut","borrow_mut","connect","fmt","fmt","from","from","generate_token","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","listener","new","release_token","remove_client_auth","report","source","to_string","try_from","try_from","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","type_id","type_id","update","vzip","vzip","AddressMissing","AddressParseFailed","AddressPortInvalid","BinaryPathInvalid","BridgeLine","BridgeLineError","FingerprintInvalid","FingerprintMissing","KeyValueInvalid","PluggableTransportConfig","PluggableTransportConfigError","TransportMissing","TransportNameInvalid","TransportNameInvalid","__clone_box","__clone_box","add_option","address","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_legacy_tor_setconf_value","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","clone_to_uninit","clone_to_uninit","fingerprint","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from_str","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","keyvalues","new","new","options","path_to_binary","report","report","to_owned","to_owned","to_string","to_string","transport","transports","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into_slug","try_into_slug","try_octets_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","AddOnionFailed","BridgeTransportNotSupported","BridgeTransportTypeMultiplyDefined","BundledTor","CircuitTokenInvalid","DelOnionFailed","Error","GetInfoNetListenersSocksFailed","GetInfoVersionFailed","LegacyControlStreamCreationFailed","LegacyTorClient","LegacyTorClientConfig","LegacyTorControllerCreationFailed","LegacyTorNotBootstrapped","LegacyTorProcessAuthenticationFailed","LegacyTorProcessCreationFailed","LegacyTorProcessTooOld","NoSocksListenersFound","NotImplemented","OnionClientAuthAddFailed","OnionClientAuthRemoveFailed","PluggableTransportBinaryNameNotUtf8Representnable","PluggableTransportConfigDirectoryCreationFailed","PluggableTransportConfigError","PluggableTransportDirectoryNameCollision","PluggableTransportSymlinkCreationFailed","PluggableTransportSymlinkRemovalFailed","SetConfDisableNetwork0Failed","SetConfFailed","SetEventsFailed","Socks5ConnectionFailed","SystemTor","TcpListenerBindFailed","TcpListenerLocalAddrFailed","WaitAsyncEventsFailed","__clone_box","add_client_auth","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","connect","fmt","fmt","fmt","from","from","from","generate_token","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","listener","new","release_token","remove_client_auth","report","source","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","update","version","vzip","vzip","vzip","allowed_ports","bridge_lines","data_directory","pluggable_transports","proxy_settings","tor_bin_path","tor_control_addr","tor_control_passwd","tor_socks_addr","Error","LegacyTorVersion","ParseError","__clone_box","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","clone_to_uninit","eq","fmt","fmt","from","from","from_str","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","new","partial_cmp","report","to_owned","to_string","to_string","try_from","try_from","try_into","try_into","try_into_slug","try_into_slug","try_octets_into","try_octets_into","type_id","type_id","vzip","vzip","ClientAlreadyBootstrapped","ClientNotBootstrapped","ConnectFailed","Error","MockTorClient","NotImplemented","OnionServiceAuthInvalid","OnionServiceNotFound","OnionServiceNotPublished","OnionServiceRequiresOnionAuth","TcpListenerBindFailed","TcpListenerLocalAddrFailed","add_client_auth","as_any","as_any","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow_mut","borrow_mut","connect","default","drop","fmt","fmt","from","from","generate_token","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","listener","new","release_token","remove_client_auth","report","source","to_string","try_from","try_from","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","type_id","type_id","update","vzip","vzip","Generic","Https","HttpsProxyConfig","ProxyConfig","ProxyConfigError","Socks4","Socks4ProxyConfig","Socks5","Socks5ProxyConfig","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","new","new","new","report","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into_slug","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","ConversionError","ED25519_PRIVATE_KEYBLOB_BASE64_LENGTH","ED25519_PRIVATE_KEY_KEYBLOB_HEADER_LENGTH","ED25519_PRIVATE_KEY_KEYBLOB_LENGTH","ED25519_PRIVATE_KEY_KEYBLOB_SIZE","ED25519_PRIVATE_KEY_SIZE","ED25519_PUBLIC_KEY_SIZE","ED25519_SIGNATURE_SIZE","Ed25519PrivateKey","Ed25519PublicKey","Ed25519Signature","Error","KeyInvalid","One","ParseError","SignBit","V3OnionServiceId","V3_ONION_SERVICE_ID_STRING_LENGTH","V3_ONION_SERVICE_ID_STRING_SIZE","X25519PrivateKey","X25519PublicKey","X25519_PRIVATE_KEY_BASE64_LENGTH","X25519_PRIVATE_KEY_BASE64_SIZE","X25519_PRIVATE_KEY_SIZE","X25519_PUBLIC_KEY_BASE32_LENGTH","X25519_PUBLIC_KEY_BASE32_SIZE","X25519_PUBLIC_KEY_SIZE","Zero","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","__clone_box","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_bytes","as_bytes","as_bytes","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","compare","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from_base32","from_base64","from_key_blob","from_private_key","from_private_key","from_private_key","from_private_x25519","from_public_key","from_raw","from_raw","from_raw","from_raw","from_raw","from_service_id","from_string","generate","generate","hash","hash","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_valid","partial_cmp","report","sign_message","sign_message","to_base32","to_base64","to_bytes","to_bytes","to_bytes","to_key_blob","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_slug","try_into_slug","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","verify","verify_x25519","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","BootstrapComplete","BootstrapStatus","CircuitToken","Domain","DomainAddr","Error","Generic","LogReceived","OnionAddr","OnionAddrV3","OnionListener","OnionService","OnionServicePublished","OnionStream","ParseFailure","Socket","TargetAddr","TorEvent","TorProvider","V3","__clone_box","__clone_box","__clone_box","__clone_box","accept","add_client_auth","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","bootstrap","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_to_uninit","clone_to_uninit","clone_to_uninit","clone_to_uninit","cmp","cmp","cmp","compare","compare","compare","connect","deref","deref_mut","domain","drop","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","flush","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from_str","from_str","from_str","generate_token","hash","hash","hash","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","listener","local_addr","new","partial_cmp","partial_cmp","partial_cmp","peer_addr","port","read","release_token","remove_client_auth","report","service_id","set_nonblocking","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","try_clone","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into_slug","try_into_slug","try_into_slug","try_into_slug","try_into_slug","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","try_octets_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","update","virt_port","vzip","vzip","vzip","vzip","vzip","vzip","vzip","vzip","write","write","line","progress","service_id","summary","tag"],"q":[[0,"tor_interface"],[8,"tor_interface::arti_client_tor_client"],[65,"tor_interface::censorship_circumvention"],[169,"tor_interface::legacy_tor_client"],[268,"tor_interface::legacy_tor_client::LegacyTorClientConfig"],[277,"tor_interface::legacy_tor_version"],[324,"tor_interface::mock_tor_client"],[381,"tor_interface::proxy"],[495,"tor_interface::tor_crypto"],[734,"tor_interface::tor_provider"],[964,"tor_interface::tor_provider::TorEvent"],[969,"core::result"],[970,"core::any"],[971,"core::option"],[972,"core::fmt"],[973,"alloc::boxed"],[974,"alloc::sync"],[975,"alloc::rc"],[976,"tokio::runtime::runtime"],[977,"std::path"],[978,"tor_error::report"],[979,"core::error"],[980,"alloc::string"],[981,"tor_persist::slug"],[982,"alloc::vec"],[983,"dyn_clone::sealed"],[984,"core::net::socket_addr"],[985,"core::cmp"],[986,"core::hash"],[987,"std::io::error"],[988,"der::error"]],"i":[0,0,0,0,0,0,0,0,14,14,14,14,0,0,14,14,14,14,14,14,14,14,2,2,14,2,14,2,2,14,2,14,2,14,14,2,14,2,2,14,2,14,2,14,2,14,2,2,2,2,14,14,14,2,14,2,14,14,2,14,2,14,2,2,14,41,41,41,40,0,0,41,41,41,0,0,41,40,41,37,38,37,38,37,40,38,41,37,40,38,41,38,37,40,38,41,37,40,38,41,37,38,37,38,37,38,38,37,40,40,38,41,41,37,40,38,41,38,37,40,38,41,37,40,38,41,37,40,38,41,37,40,38,41,38,37,38,37,37,40,41,37,38,40,41,38,37,37,40,38,41,37,40,38,41,40,41,37,40,38,41,37,40,38,41,37,40,38,41,47,47,47,46,47,47,0,47,47,47,0,0,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,46,47,47,47,46,45,45,47,46,45,47,46,45,45,47,46,45,47,46,46,46,46,45,47,47,46,45,47,46,45,45,47,46,45,47,46,45,47,46,45,47,46,45,45,45,45,47,47,46,47,45,47,46,45,47,46,47,45,47,46,45,47,46,45,45,45,47,46,74,74,74,74,74,74,75,75,75,0,0,50,48,50,48,50,48,50,48,50,48,48,48,48,48,50,50,50,48,48,50,48,50,48,50,48,50,48,48,48,50,48,50,48,50,48,50,48,50,48,50,48,50,48,50,48,54,54,54,0,0,54,54,54,54,54,54,54,53,53,54,53,54,53,53,54,53,54,53,53,53,54,54,53,54,53,53,54,53,54,53,54,53,54,53,53,53,53,54,54,54,53,54,53,54,54,53,54,53,54,53,53,54,59,58,0,0,0,58,0,58,0,55,56,57,58,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,55,56,57,58,55,56,57,58,55,56,57,58,59,59,55,56,57,58,59,55,56,57,58,58,58,58,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,55,56,57,59,55,56,57,58,59,59,55,56,57,58,59,55,56,57,58,59,59,55,56,57,58,59,55,56,57,58,59,55,56,57,58,65,0,0,0,0,0,0,0,0,0,0,0,65,64,65,0,0,0,0,0,0,0,0,0,0,0,0,64,20,60,63,5,22,4,64,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,60,22,4,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,20,60,63,5,22,4,64,20,60,63,5,22,4,64,20,60,63,5,22,4,64,64,4,4,20,60,63,5,22,4,22,22,22,4,4,4,20,65,65,60,63,5,22,4,4,20,65,60,63,5,22,4,64,64,22,5,20,60,22,4,20,4,20,60,63,5,22,60,4,20,5,22,4,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,4,4,65,20,5,22,5,20,63,5,20,20,60,63,5,22,4,64,65,4,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,65,4,20,65,60,63,5,22,4,64,20,65,60,63,5,22,4,64,63,63,20,65,60,63,5,22,4,64,34,34,0,10,0,0,7,34,0,0,0,10,34,0,7,10,0,0,0,70,69,70,71,10,24,68,13,24,7,69,70,71,10,34,13,24,7,69,70,71,10,34,68,13,24,7,69,70,71,10,34,13,24,7,69,70,71,10,34,69,70,71,10,69,70,71,10,69,70,71,10,69,70,71,69,70,71,68,13,13,71,24,69,70,71,69,69,69,70,70,70,71,71,71,13,7,7,69,69,70,70,71,71,10,10,34,13,24,7,7,7,7,69,70,71,10,10,34,70,71,10,68,69,70,71,13,24,7,69,70,71,10,34,13,24,7,69,70,71,10,34,13,7,69,70,71,10,34,13,24,7,69,70,71,10,34,68,13,69,69,70,71,13,71,13,68,68,7,69,24,69,70,71,10,7,69,70,71,10,13,13,24,7,69,70,71,71,10,34,13,24,7,69,70,71,10,34,7,69,70,71,10,13,24,7,69,70,71,10,34,13,24,7,69,70,71,10,34,68,69,13,24,7,69,70,71,10,34,13,13,76,77,78,77,77],"f":"``````````````````````{{{f{bd}}{f{h}}{f{j}}}{{A`{ln}}}}{{{f{c}}}{{f{Ab}}}{}}0{{{f{bc}}}{{f{bAb}}}{}}0{{{f{bd}}}{{A`{ln}}}}{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0{{{f{bd}}Ad{Ah{Af}}}{{A`{Ajn}}}}{{{f{Al}}{f{bAn}}}B`}0{cc{}}0{{{f{bd}}}Af}{ce{}{}}0{{{Bb{c}}}{{Bb{Ab}}}{}}0{{{Bd{c}}}{{Bd{Ab}}}{}}0{{{Bf{c}}}{{Bf{Ab}}}{}}0{{{f{bd}}{f{Bh}}Bj{Ah{{f{{Bn{Bl}}}}}}}{{A`{C`n}}}}{{{Bd{Cb}}{f{Cd}}}{{A`{dAl}}}}{{{f{bd}}Af}l}{{{f{bd}}{f{h}}}{{A`{ln}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{Al}}}{{Ah{{f{Cj}}}}}}{{{f{c}}}Cl{}}{c{{A`{e}}}{}{}}000{{{f{c}}}{{A`{CnD`}}}{}}11{{{f{c}}}Db{}}0{{{f{bd}}}{{A`{{Df{Dd}}n}}}}>>``````````````{{{f{c}}Dh}l{}}0{{{f{bDj}}Cl}l}{{{f{Dl}}}{{f{Dn}}}}{{{f{c}}}{{f{Ab}}}{}}000{{{f{bc}}}{{f{bAb}}}{}}000{{{f{Dl}}}Cl}{{{f{c}}}{{f{e}}}{}{}}000{{{f{bc}}}{{f{be}}}{}{}}000{{{f{Dj}}}Dj}{{{f{Dl}}}Dl}{{{f{c}}{f{be}}}l{}{}}0{{{f{c}}}l{}}0{{{f{Dl}}}{{f{Cl}}}}{{{f{Dj}}{f{bAn}}}B`}{{{f{E`}}{f{bAn}}}B`}0{{{f{Dl}}{f{bAn}}}B`}{{{f{Eb}}{f{bAn}}}B`}0{cc{}}000{{{f{Ed}}}{{A`{Dlc}}}{}}{ce{}{}}000{{{Bb{c}}}{{Bb{Ab}}}{}}000{{{Bd{c}}}{{Bd{Ab}}}{}}000{{{Bf{c}}}{{Bf{Ab}}}{}}000{{{f{Dl}}}{{f{{Df{{Ef{ClCl}}}}}}}}{{{Df{Cl}}Eh}{{A`{DjE`}}}}{{ClDnCl{Df{{Ef{ClCl}}}}}{{A`{DlEb}}}}{{{f{Dj}}}{{f{{Df{Cl}}}}}}{{{f{Dj}}}{{f{Eh}}}}{{{f{c}}}{{Ch{Cf}}}{}}0{{{f{c}}}e{}{}}0{{{f{c}}}Cl{}}0{{{f{Dl}}}{{f{Cl}}}}5{c{{A`{e}}}{}{}}0000000{{{f{c}}}{{A`{CnD`}}}{}}01111{{{f{c}}}Db{}}000????```````````````````````````````````{{{f{c}}Dh}l{}}{{{f{bEj}}{f{h}}{f{j}}}{{A`{ln}}}}{{{f{c}}}{{f{Ab}}}{}}00{{{f{bc}}}{{f{bAb}}}{}}00{{{f{bEj}}}{{A`{ln}}}}{{{f{c}}}{{f{e}}}{}{}}00{{{f{bc}}}{{f{be}}}{}{}}00{{{f{El}}}El}{{{f{c}}{f{be}}}l{}{}}{{{f{c}}}l{}}{{{f{bEj}}Ad{Ah{Af}}}{{A`{Ajn}}}}{{{f{En}}{f{bAn}}}B`}0{{{f{El}}{f{bAn}}}B`}{cc{}}00{{{f{bEj}}}Af}{ce{}{}}00{{{Bb{c}}}{{Bb{Ab}}}{}}00{{{Bd{c}}}{{Bd{Ab}}}{}}00{{{Bf{c}}}{{Bf{Ab}}}{}}00{{{f{bEj}}{f{Bh}}Bj{Ah{{f{{Bn{Bl}}}}}}}{{A`{C`n}}}}{El{{A`{EjEn}}}}{{{f{bEj}}Af}l}{{{f{bEj}}{f{h}}}{{A`{ln}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{En}}}{{Ah{{f{Cj}}}}}}{{{f{c}}}e{}{}}{{{f{c}}}Cl{}}{c{{A`{e}}}{}{}}00000{{{f{c}}}{{A`{CnD`}}}{}}111{{{f{c}}}Db{}}00{{{f{bEj}}}{{A`{{Df{Dd}}n}}}}{{{f{bEj}}}F`}{ce{}{}}00````````````{{{f{c}}Dh}l{}}{{{f{c}}}{{f{Ab}}}{}}0{{{f{bc}}}{{f{bAb}}}{}}0{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0{{{f{F`}}}F`}{{{f{c}}{f{be}}}l{}{}}{{{f{c}}}l{}}{{{f{F`}}{f{F`}}}Fb}{{{f{Fd}}{f{bAn}}}B`}0{cc{}}0{{{f{Ed}}}{{A`{F`c}}}{}}<<{{{Bb{c}}}{{Bb{Ab}}}{}}0{{{Bd{c}}}{{Bd{Ab}}}{}}0{{{Bf{c}}}{{Bf{Ab}}}{}}0{{FfFfFf{Ah{Ff}}{Ah{{f{Ed}}}}}{{A`{F`Fd}}}}{{{f{F`}}{f{F`}}}{{Ah{Fh}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{c}}}e{}{}}{{{f{c}}}Cl{}}{{{f{F`}}}Cl}{c{{A`{e}}}{}{}}000{{{f{c}}}{{A`{CnD`}}}{}}011{{{f{c}}}Db{}}0{ce{}{}}0````````````{{{f{bFj}}{f{h}}{f{j}}}{{A`{ln}}}}{{{f{c}}}{{f{Ab}}}{}}0{{{f{bc}}}{{f{bAb}}}{}}0{{{f{bFj}}}{{A`{ln}}}}{{{f{c}}}{{f{e}}}{}{}}0{{{f{bc}}}{{f{be}}}{}{}}0{{{f{bFj}}Ad{Ah{Af}}}{{A`{Ajn}}}}{{}Fj}{{{f{bFj}}}l}{{{f{Fl}}{f{bAn}}}B`}0{cc{}}0{{{f{bFj}}}Af}<<{{{Bb{c}}}{{Bb{Ab}}}{}}0{{{Bd{c}}}{{Bd{Ab}}}{}}0{{{Bf{c}}}{{Bf{Ab}}}{}}0{{{f{bFj}}{f{Bh}}Bj{Ah{{f{{Bn{Bl}}}}}}}{{A`{C`n}}}}8{{{f{bFj}}Af}l}{{{f{bFj}}{f{h}}}{{A`{ln}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{Fl}}}{{Ah{{f{Cj}}}}}}{{{f{c}}}Cl{}}{c{{A`{e}}}{}{}}000{{{f{c}}}{{A`{CnD`}}}{}}11{{{f{c}}}Db{}}0{{{f{bFj}}}{{A`{{Df{Dd}}n}}}}{ce{}{}}0`````````{{{f{c}}Dh}l{}}000{{{f{c}}}{{f{Ab}}}{}}0000{{{f{bc}}}{{f{bAb}}}{}}0000{{{f{c}}}{{f{e}}}{}{}}0000{{{f{bc}}}{{f{be}}}{}{}}0000{{{f{Fn}}}Fn}{{{f{G`}}}G`}{{{f{Gb}}}Gb}{{{f{Gd}}}Gd}{{{f{c}}{f{be}}}l{}{}}000{{{f{c}}}l{}}000{{{f{Gf}}{f{bAn}}}B`}0{{{f{Fn}}{f{bAn}}}B`}{{{f{G`}}{f{bAn}}}B`}{{{f{Gb}}{f{bAn}}}B`}{{{f{Gd}}{f{bAn}}}B`}{cc{}}000{FnGd}{GbGd}{G`Gd}3{ce{}{}}0000{{{Bb{c}}}{{Bb{Ab}}}{}}0000{{{Bd{c}}}{{Bd{Ab}}}{}}0000{{{Bf{c}}}{{Bf{Ab}}}{}}0000{Ad{{A`{FnGf}}}}{{Ad{Ah{Cl}}{Ah{Cl}}}{{A`{G`Gf}}}}{{Ad{Ah{Cl}}{Ah{Cl}}}{{A`{GbGf}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{c}}}e{}{}}000{{{f{c}}}Cl{}}{c{{A`{e}}}{}{}}000000000{{{f{c}}}{{A`{CnD`}}}{}}11111{{{f{c}}}Db{}}0000<<<<<````````````````````````````{{{f{c}}Dh}l{}}000000{{{f{c}}}{{f{Ab}}}{}}0000000{{{f{bc}}}{{f{bAb}}}{}}0000000{{{f{Gh}}}{{f{{Gl{Gj}}}}}}{{{f{Bl}}}{{f{{Gl{Gj}}}}}}{{{f{h}}}{{f{{Gl{Gj}}}}}}{{{f{c}}}{{f{e}}}{}{}}0000000{{{f{bc}}}{{f{be}}}{}{}}0000000{{{f{Bh}}}Bh}{{{f{Gh}}}Gh}{{{f{Gn}}}Gn}{{{f{j}}}j}{{{f{Bl}}}Bl}{{{f{h}}}h}{{{f{H`}}}H`}{{{f{c}}{f{be}}}l{}{}}000000{{{f{c}}}l{}}0000000{{{f{h}}{f{h}}}Fh}{{{f{c}}{f{e}}}Fh{}{}}{{{f{Bh}}{f{Bh}}}Fb}{{{f{Gh}}{f{Gh}}}Fb}{{{f{Gn}}{f{Gn}}}Fb}{{{f{j}}{f{j}}}Fb}{{{f{Bl}}{f{Bl}}}Fb}{{{f{h}}{f{h}}}Fb}{{{f{c}}{f{e}}}Fb{}{}}00000{{{f{Bh}}{f{bAn}}}B`}{{{f{Hb}}{f{bAn}}}B`}0{{{f{Gh}}{f{bAn}}}B`}{{{f{Gn}}{f{bAn}}}B`}{{{f{j}}{f{bAn}}}B`}{{{f{Bl}}{f{bAn}}}B`}{{{f{h}}{f{bAn}}}B`}0{cc{}}000000{FbH`}1{{{f{Ed}}}{{A`{BlHb}}}}{{{f{Ed}}}{{A`{jHb}}}}{{{f{Ed}}}{{A`{BhHb}}}}{{{f{Bh}}}Gh}{{{f{j}}}Bl}{{{f{Bh}}}h}{{{f{j}}}{{A`{{Ef{BhH`}}Hb}}}}{{{f{Gh}}}h}{{{f{{Gl{Gj}}}}}{{A`{BhHb}}}}{{{f{{Gl{Gj}}}}}{{A`{GhHb}}}}{{{f{{Gl{Gj}}}}}{{A`{GnHb}}}}{{{f{{Gl{Gj}}}}}{{A`{jHb}}}}{{{f{{Gl{Gj}}}}}Bl}{{{f{h}}}{{A`{GhHb}}}}{{{f{Ed}}}{{A`{hHb}}}}{{}Bh}{{}j}{{{f{Bl}}{f{bc}}}lHd}{{{f{h}}{f{bc}}}lHd}{ce{}{}}0000000{{{Bb{c}}}{{Bb{Ab}}}{}}0000000{{{Bd{c}}}{{Bd{Ab}}}{}}0000000{{{Bf{c}}}{{Bf{Ab}}}{}}0000000{{{f{Ed}}}Fb}{{{f{h}}{f{h}}}{{Ah{Fh}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{Bh}}{f{{Bn{Gj}}}}}Gn}{{{f{j}}{f{{Bn{Gj}}}}}{{A`{{Ef{GnH`}}Hb}}}}{{{f{Bl}}}Cl}{{{f{j}}}Cl}{{{f{Bh}}}{{Gl{Gj}}}}{{{f{Gn}}}{{Gl{Gj}}}}{{{f{j}}}{{Gl{Gj}}}}{{{f{Bh}}}Cl}{{{f{c}}}e{}{}}000000{{{f{c}}}Cl{}}0{c{{A`{e}}}{}{}}000000000000000{{{f{c}}}{{A`{CnD`}}}{}}011111111{{{f{c}}}Db{}}0000000{{{f{Gn}}{f{{Bn{Gj}}}}{f{Gh}}}Fb}{{{f{Gn}}{f{{Bn{Gj}}}}{f{Bl}}H`}Fb}{ce{}{}}0000000````````````````````{{{f{c}}Dh}l{}}000{{{f{C`}}}{{A`{{Ah{Aj}}Hf}}}}{{{f{bHh}}{f{h}}{f{j}}}{{A`{ln}}}}{{{f{c}}}{{f{Ab}}}{}}0000000{{{f{bc}}}{{f{bAb}}}{}}0000000{{{f{bHh}}}{{A`{ln}}}}{{{f{c}}}{{f{e}}}{}{}}0000000{{{f{bc}}}{{f{be}}}{}{}}0000000{{{f{Hj}}}Hj}{{{f{Hl}}}Hl}{{{f{Hn}}}Hn}{{{f{Ad}}}Ad}{{{f{c}}{f{be}}}l{}{}}000{{{f{c}}}l{}}000{{{f{Hj}}{f{Hj}}}Fh}{{{f{Hl}}{f{Hl}}}Fh}{{{f{Hn}}{f{Hn}}}Fh}{{{f{c}}{f{e}}}Fh{}{}}00{{{f{bHh}}Ad{Ah{Af}}}{{A`{Ajn}}}}{{{f{Aj}}}{{f{c}}}{}}{{{f{bAj}}}{{f{bc}}}{}}{{{f{Hn}}}{{f{Ed}}}}{{{f{bC`}}}l}{{{f{Hj}}{f{Hj}}}Fb}{{{f{Hl}}{f{Hl}}}Fb}{{{f{Hn}}{f{Hn}}}Fb}{{{f{c}}{f{e}}}Fb{}{}}00000000{{{f{bAj}}}{{A`{lHf}}}}{{{f{n}}{f{bAn}}}B`}0{{{f{Hj}}{f{bAn}}}B`}0{{{f{Hl}}{f{bAn}}}B`}0{{{f{Hn}}{f{bAn}}}B`}0{{{f{Ad}}{f{bAn}}}B`}0{{{f{Dd}}{f{bAn}}}B`}{cc{}}00{Fln}{Enn}{Aln}3333{{{Ef{hBj}}}Ad}4{{{f{Ed}}}{{A`{Hlc}}}{}}{{{f{Ed}}}{{A`{Hnc}}}{}}{{{f{Ed}}}{{A`{Adc}}}{}}{{{f{bHh}}}Af}{{{f{Hj}}{f{bc}}}lHd}{{{f{Hl}}{f{bc}}}lHd}{{{f{Hn}}{f{bc}}}lHd}{ce{}{}}0000000{{{Bb{c}}}{{Bb{Ab}}}{}}0000000{{{Bd{c}}}{{Bd{Ab}}}{}}000000{{{Bf{c}}}{{Bf{Ab}}}{}}0000000{{{f{bHh}}{f{Bh}}Bj{Ah{{f{{Bn{Bl}}}}}}}{{A`{C`n}}}}{{{f{Aj}}}{{Ah{Hl}}}}{{hBj}Hj}{{{f{Hj}}{f{Hj}}}{{Ah{Fh}}}}{{{f{Hl}}{f{Hl}}}{{Ah{Fh}}}}{{{f{Hn}}{f{Hn}}}{{Ah{Fh}}}}{{{f{Aj}}}{{Ah{Ad}}}}{{{f{Hn}}}Bj}{{{f{bAj}}{f{b{Bn{Gj}}}}}{{A`{I`Hf}}}}{{{f{bHh}}Af}l}{{{f{bHh}}{f{h}}}{{A`{ln}}}}{{{f{c}}}{{Ch{Cf}}}{}}{{{f{Hj}}}{{f{h}}}}{{{f{C`}}Fb}{{A`{lHf}}}}{{{f{c}}}e{}{}}000{{{f{c}}}Cl{}}0000{{{f{Aj}}}{{A`{AjHf}}}}{c{{A`{e}}}{}{}}00000{{{Ef{ClBj}}}{{A`{Hnc}}}{}}1111111111{{{f{c}}}{{A`{CnD`}}}{}}000022222222{{{f{c}}}Db{}}0000000{{{f{bHh}}}{{A`{{Df{Dd}}n}}}}{{{f{Hj}}}Bj}{ce{}{}}0000000{{{f{bc}}{f{{Bn{Gj}}}}}{{A`{lIb}}}{}}{{{f{bAj}}{f{{Bn{Gj}}}}}{{A`{I`Hf}}}}`````","D":"ALd","p":[[0,"mut"],[5,"ArtiClientTorClient",8],[1,"reference"],[5,"V3OnionServiceId",495],[5,"X25519PrivateKey",495],[1,"unit"],[6,"Error",734],[6,"Result",969],[10,"Any",970],[6,"TargetAddr",734],[8,"CircuitToken",734],[6,"Option",971],[5,"OnionStream",734],[6,"Error",8],[5,"Formatter",972],[8,"Result",972],[5,"Box",973],[5,"Arc",974],[5,"Rc",975],[5,"Ed25519PrivateKey",495],[1,"u16"],[5,"X25519PublicKey",495],[1,"slice"],[5,"OnionListener",734],[5,"Runtime",976],[5,"Path",977],[5,"ReportHelper",978],[5,"Report",978],[10,"Error",979],[5,"String",980],[5,"Slug",981],[6,"BadSlug",981],[5,"TypeId",970],[6,"TorEvent",734],[5,"Vec",982],[5,"Private",983],[5,"PluggableTransportConfig",65],[5,"BridgeLine",65],[6,"SocketAddr",984],[6,"PluggableTransportConfigError",65],[6,"BridgeLineError",65],[1,"str"],[1,"tuple"],[5,"PathBuf",977],[5,"LegacyTorClient",169],[6,"LegacyTorClientConfig",169],[6,"Error",169],[5,"LegacyTorVersion",277],[1,"bool"],[6,"Error",277],[1,"u32"],[6,"Ordering",985],[5,"MockTorClient",324],[6,"Error",324],[5,"Socks4ProxyConfig",381],[5,"Socks5ProxyConfig",381],[5,"HttpsProxyConfig",381],[6,"ProxyConfig",381],[6,"ProxyConfigError",381],[5,"Ed25519PublicKey",495],[1,"u8"],[1,"array"],[5,"Ed25519Signature",495],[6,"SignBit",495],[6,"Error",495],[10,"Hasher",986],[5,"Error",987],[10,"TorProvider",734],[5,"OnionAddrV3",734],[6,"OnionAddr",734],[5,"DomainAddr",734],[1,"usize"],[5,"Error",988],[15,"BundledTor",268],[15,"SystemTor",268],[15,"LogReceived",964],[15,"BootstrapStatus",964],[15,"OnionServicePublished",964]],"r":[],"b":[[33,"impl-Display-for-Error"],[34,"impl-Debug-for-Error"],[108,"impl-Debug-for-PluggableTransportConfigError"],[109,"impl-Display-for-PluggableTransportConfigError"],[111,"impl-Debug-for-BridgeLineError"],[112,"impl-Display-for-BridgeLineError"],[223,"impl-Display-for-Error"],[224,"impl-Debug-for-Error"],[293,"impl-Debug-for-Error"],[294,"impl-Display-for-Error"],[349,"impl-Display-for-Error"],[350,"impl-Debug-for-Error"],[426,"impl-Display-for-ProxyConfigError"],[427,"impl-Debug-for-ProxyConfigError"],[436,"impl-From%3CSocks4ProxyConfig%3E-for-ProxyConfig"],[437,"impl-From%3CHttpsProxyConfig%3E-for-ProxyConfig"],[438,"impl-From%3CSocks5ProxyConfig%3E-for-ProxyConfig"],[602,"impl-Debug-for-Error"],[603,"impl-Display-for-Error"],[608,"impl-Debug-for-V3OnionServiceId"],[609,"impl-Display-for-V3OnionServiceId"],[829,"impl-Display-for-Error"],[830,"impl-Debug-for-Error"],[831,"impl-Display-for-OnionAddrV3"],[832,"impl-Debug-for-OnionAddrV3"],[833,"impl-Debug-for-OnionAddr"],[834,"impl-Display-for-OnionAddr"],[835,"impl-Display-for-DomainAddr"],[836,"impl-Debug-for-DomainAddr"],[837,"impl-Display-for-TargetAddr"],[838,"impl-Debug-for-TargetAddr"],[843,"impl-From%3CError%3E-for-Error"],[844,"impl-From%3CError%3E-for-Error"],[845,"impl-From%3CError%3E-for-Error"]],"c":"OjAAAAAAAAA=","e":"OzAAAAEAAOcCOAAJAAMADwAUACYAAAApAAYAMQAQAFAAAQBUAAcAXQANAGwABQB2AAAAewALAIwABQCUABsAsQACALUALQDmAAAA6gAJAPUAEwAKAQsAGAEPACoBAAAtAQUANAETAEoBFQBiAQAAZQEGAG0BEACHASkAtQECAL4BDgDQAR8A/QEAAAsCFwAmAjwAagIAAH0CAQCHAhcAoAIBAKoCKgDXAgcA8gIEAPkCDwAKAyEALQMBADADGABMAwIAUwMAAFUDAgBZAwIAZAMWAH4DAgCDAwAAhgMAAIkDCACTAyUAuwMJAA=="}]\ ]')); if (typeof exports !== 'undefined') exports.searchIndex = searchIndex; else if (window.initSearch) window.initSearch(searchIndex); diff --git a/crates/tor_interface/arti_client_tor_client/enum.Error.html b/crates/tor_interface/arti_client_tor_client/enum.Error.html index 790c5b92..5473cfde 100644 --- a/crates/tor_interface/arti_client_tor_client/enum.Error.html +++ b/crates/tor_interface/arti_client_tor_client/enum.Error.html @@ -1,4 +1,4 @@ -Error in tor_interface::arti_client_tor_client - Rust

Enum tor_interface::arti_client_tor_client::Error

source ·
pub enum Error {
+Error in tor_interface::arti_client_tor_client - Rust

Enum tor_interface::arti_client_tor_client::Error

source ·
pub enum Error {
     NotImplemented(),
     TcpListenerBindFailed(Error),
     TcpListenerLocalAddrFailed(Error),
@@ -13,7 +13,14 @@
     OnionServiceConfigBuilderError(ConfigBuildError),
 }
Expand description

ArtiClientTorClient-specific error type

Variants§

§

NotImplemented()

§

TcpListenerBindFailed(Error)

§

TcpListenerLocalAddrFailed(Error)

§

TcpListenerAcceptFailed(Error)

§

TcpStreamConnectFailed(Error)

§

TcpStreamIntoFailed(Error)

§

ArtiClientConfigBuilderError(ConfigBuildError)

§

ArtiClientError(Error)

§

ArtiClientTorAddrError(TorAddrError)

§

ArtiClientOnionServiceLaunchError(Error)

§

TorKeyMgrError(Error)

§

OnionServiceConfigBuilderError(ConfigBuildError)

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/arti_client_tor_client/struct.ArtiClientTorClient.html b/crates/tor_interface/arti_client_tor_client/struct.ArtiClientTorClient.html index 2a1405f3..5efd309c 100644 --- a/crates/tor_interface/arti_client_tor_client/struct.ArtiClientTorClient.html +++ b/crates/tor_interface/arti_client_tor_client/struct.ArtiClientTorClient.html @@ -1,4 +1,4 @@ -ArtiClientTorClient in tor_interface::arti_client_tor_client - Rust
pub struct ArtiClientTorClient { /* private fields */ }
Expand description

The ArtiClientTorClient is an in-process arti-client-based TorProvider.

+ArtiClientTorClient in tor_interface::arti_client_tor_client - Rust
pub struct ArtiClientTorClient { /* private fields */ }
Expand description

The ArtiClientTorClient is an in-process arti-client-based TorProvider.

Implementations§

source§

impl ArtiClientTorClient

source

pub fn new( tokio_runtime: Arc<Runtime>, root_data_directory: &Path, @@ -20,7 +20,14 @@ virt_port: u16, authorized_clients: Option<&[X25519PublicKey]>, ) -> Result<OnionListener, Error>

Anonymously start an onion-service and return the associated OnionListener. Read more
source§

fn generate_token(&mut self) -> CircuitToken

Create a new CircuitToken.
source§

fn release_token(&mut self, _token: CircuitToken)

Releaes a previously generated CircuitToken.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/censorship_circumvention/enum.BridgeLineError.html b/crates/tor_interface/censorship_circumvention/enum.BridgeLineError.html index 60d5ea32..12d6d65c 100644 --- a/crates/tor_interface/censorship_circumvention/enum.BridgeLineError.html +++ b/crates/tor_interface/censorship_circumvention/enum.BridgeLineError.html @@ -1,4 +1,4 @@ -BridgeLineError in tor_interface::censorship_circumvention - Rust
pub enum BridgeLineError {
+BridgeLineError in tor_interface::censorship_circumvention - Rust
pub enum BridgeLineError {
     TransportMissing(String),
     AddressMissing(String),
     FingerprintMissing(String),
@@ -16,8 +16,15 @@
 
§

KeyValueInvalid(String)

A key/value pair in invalid format

§

AddressPortInvalid

Invalid bridge address port

§

FingerprintInvalid(String)

Fingerprint is not parseable (must be length 40 base16 string)

-

Trait Implementations§

source§

impl Debug for BridgeLineError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for BridgeLineError

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for BridgeLineError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Trait Implementations§

source§

impl Debug for BridgeLineError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for BridgeLineError

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for BridgeLineError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/censorship_circumvention/enum.PluggableTransportConfigError.html b/crates/tor_interface/censorship_circumvention/enum.PluggableTransportConfigError.html index c9b31b6d..c40ed043 100644 --- a/crates/tor_interface/censorship_circumvention/enum.PluggableTransportConfigError.html +++ b/crates/tor_interface/censorship_circumvention/enum.PluggableTransportConfigError.html @@ -1,11 +1,18 @@ -PluggableTransportConfigError in tor_interface::censorship_circumvention - Rust
pub enum PluggableTransportConfigError {
+PluggableTransportConfigError in tor_interface::censorship_circumvention - Rust
pub enum PluggableTransportConfigError {
     TransportNameInvalid(String),
     BinaryPathInvalid(String, String),
 }
Expand description

Error returned on failure to construct a PluggableTransportConfig

Variants§

§

TransportNameInvalid(String)

transport names must be a valid C identifier

§

BinaryPathInvalid(String, String)

configuration only allows aboslute paths to binaries

-

Trait Implementations§

source§

impl Debug for PluggableTransportConfigError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for PluggableTransportConfigError

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for PluggableTransportConfigError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Trait Implementations§

source§

impl Debug for PluggableTransportConfigError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for PluggableTransportConfigError

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for PluggableTransportConfigError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/censorship_circumvention/struct.BridgeLine.html b/crates/tor_interface/censorship_circumvention/struct.BridgeLine.html index 435bc3a8..727137c3 100644 --- a/crates/tor_interface/censorship_circumvention/struct.BridgeLine.html +++ b/crates/tor_interface/censorship_circumvention/struct.BridgeLine.html @@ -1,4 +1,4 @@ -BridgeLine in tor_interface::censorship_circumvention - Rust
pub struct BridgeLine { /* private fields */ }
Expand description

Configuration for a bridge line to be used with a pluggable-transport

+BridgeLine in tor_interface::censorship_circumvention - Rust
pub struct BridgeLine { /* private fields */ }
Expand description

Configuration for a bridge line to be used with a pluggable-transport

Implementations§

source§

impl BridgeLine

A BridgeLine contains the information required to connect to a bridge through the means of a particular pluggable-transport (defined in a PluggableTransportConfi). For more information, see:

source

pub fn keyvalues(&self) -> &Vec<(String, String)>

Get a reference to this BridgeLine’s key/values field.

source

pub fn as_legacy_tor_setconf_value(&self) -> String

Serialise this BridgeLine to the value set via SETCONF Bridge... legacy c-tor control-port command.

Trait Implementations§

source§

impl Clone for BridgeLine

source§

fn clone(&self) -> BridgeLine

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for BridgeLine

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl FromStr for BridgeLine

§

type Err = BridgeLineError

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/censorship_circumvention/struct.PluggableTransportConfig.html b/crates/tor_interface/censorship_circumvention/struct.PluggableTransportConfig.html index 117c24bc..8abdb1a5 100644 --- a/crates/tor_interface/censorship_circumvention/struct.PluggableTransportConfig.html +++ b/crates/tor_interface/censorship_circumvention/struct.PluggableTransportConfig.html @@ -1,4 +1,4 @@ -PluggableTransportConfig in tor_interface::censorship_circumvention - Rust
pub struct PluggableTransportConfig { /* private fields */ }
Expand description

Configuration for a pluggable-transport

+PluggableTransportConfig in tor_interface::censorship_circumvention - Rust
pub struct PluggableTransportConfig { /* private fields */ }
Expand description

Configuration for a pluggable-transport

Implementations§

source§

impl PluggableTransportConfig

Configuration struct for a pluggable-transport which conforms to the v1.0 pluggable-transport specification

source

pub fn new( transports: Vec<String>, @@ -9,7 +9,14 @@

source

pub fn options(&self) -> &Vec<String>

Get a reference to this PluggableTransportConfig’s list of command-line options

source

pub fn add_option(&mut self, arg: String)

Add a command-line option used to invoke this pluggable-transport.

Trait Implementations§

source§

impl Clone for PluggableTransportConfig

source§

fn clone(&self) -> PluggableTransportConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for PluggableTransportConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/legacy_tor_client/enum.Error.html b/crates/tor_interface/legacy_tor_client/enum.Error.html index d5ab8ccb..8cc73cda 100644 --- a/crates/tor_interface/legacy_tor_client/enum.Error.html +++ b/crates/tor_interface/legacy_tor_client/enum.Error.html @@ -1,4 +1,4 @@ -Error in tor_interface::legacy_tor_client - Rust

Enum tor_interface::legacy_tor_client::Error

source ·
pub enum Error {
+Error in tor_interface::legacy_tor_client - Rust

Enum tor_interface::legacy_tor_client::Error

source ·
pub enum Error {
 
Show 30 variants LegacyTorProcessCreationFailed(Error), LegacyControlStreamCreationFailed(Error), LegacyTorControllerCreationFailed(Error), @@ -30,8 +30,15 @@ BridgeTransportNotSupported(String), NotImplemented(),
}
Expand description

LegacyTorClient-specific error type

-

Variants§

§

LegacyTorProcessCreationFailed(Error)

§

LegacyControlStreamCreationFailed(Error)

§

LegacyTorControllerCreationFailed(Error)

§

LegacyTorProcessAuthenticationFailed(Error)

§

GetInfoVersionFailed(Error)

§

LegacyTorProcessTooOld(String, String)

§

SetEventsFailed(Error)

§

DelOnionFailed(Error)

§

WaitAsyncEventsFailed(Error)

§

SetConfDisableNetwork0Failed(Error)

§

SetConfFailed(Error)

§

OnionClientAuthAddFailed(Error)

§

OnionClientAuthRemoveFailed(Error)

§

GetInfoNetListenersSocksFailed(Error)

§

NoSocksListenersFound()

§

CircuitTokenInvalid()

§

Socks5ConnectionFailed(Error)

§

TcpListenerBindFailed(Error)

§

TcpListenerLocalAddrFailed(Error)

§

AddOnionFailed(Error)

§

LegacyTorNotBootstrapped()

§

PluggableTransportConfigDirectoryCreationFailed(Error)

§

PluggableTransportDirectoryNameCollision(PathBuf)

§

PluggableTransportSymlinkRemovalFailed(Error)

§

PluggableTransportSymlinkCreationFailed(Error)

§

PluggableTransportBinaryNameNotUtf8Representnable(OsString)

§

PluggableTransportConfigError(PluggableTransportConfigError)

§

BridgeTransportTypeMultiplyDefined(String)

§

BridgeTransportNotSupported(String)

§

NotImplemented()

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Variants§

§

LegacyTorProcessCreationFailed(Error)

§

LegacyControlStreamCreationFailed(Error)

§

LegacyTorControllerCreationFailed(Error)

§

LegacyTorProcessAuthenticationFailed(Error)

§

GetInfoVersionFailed(Error)

§

LegacyTorProcessTooOld(String, String)

§

SetEventsFailed(Error)

§

DelOnionFailed(Error)

§

WaitAsyncEventsFailed(Error)

§

SetConfDisableNetwork0Failed(Error)

§

SetConfFailed(Error)

§

OnionClientAuthAddFailed(Error)

§

OnionClientAuthRemoveFailed(Error)

§

GetInfoNetListenersSocksFailed(Error)

§

NoSocksListenersFound()

§

CircuitTokenInvalid()

§

Socks5ConnectionFailed(Error)

§

TcpListenerBindFailed(Error)

§

TcpListenerLocalAddrFailed(Error)

§

AddOnionFailed(Error)

§

LegacyTorNotBootstrapped()

§

PluggableTransportConfigDirectoryCreationFailed(Error)

§

PluggableTransportDirectoryNameCollision(PathBuf)

§

PluggableTransportSymlinkRemovalFailed(Error)

§

PluggableTransportSymlinkCreationFailed(Error)

§

PluggableTransportBinaryNameNotUtf8Representnable(OsString)

§

PluggableTransportConfigError(PluggableTransportConfigError)

§

BridgeTransportTypeMultiplyDefined(String)

§

BridgeTransportNotSupported(String)

§

NotImplemented()

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/legacy_tor_client/enum.LegacyTorClientConfig.html b/crates/tor_interface/legacy_tor_client/enum.LegacyTorClientConfig.html index 3e84c213..b95a8843 100644 --- a/crates/tor_interface/legacy_tor_client/enum.LegacyTorClientConfig.html +++ b/crates/tor_interface/legacy_tor_client/enum.LegacyTorClientConfig.html @@ -1,4 +1,4 @@ -LegacyTorClientConfig in tor_interface::legacy_tor_client - Rust
pub enum LegacyTorClientConfig {
+LegacyTorClientConfig in tor_interface::legacy_tor_client - Rust
pub enum LegacyTorClientConfig {
     BundledTor {
         tor_bin_path: PathBuf,
         data_directory: PathBuf,
@@ -13,7 +13,14 @@
         tor_control_passwd: String,
     },
 }

Variants§

§

BundledTor

Fields

§tor_bin_path: PathBuf
§data_directory: PathBuf
§proxy_settings: Option<ProxyConfig>
§allowed_ports: Option<Vec<u16>>
§pluggable_transports: Option<Vec<PluggableTransportConfig>>
§bridge_lines: Option<Vec<BridgeLine>>
§

SystemTor

Fields

§tor_socks_addr: SocketAddr
§tor_control_addr: SocketAddr
§tor_control_passwd: String

Trait Implementations§

source§

impl Clone for LegacyTorClientConfig

source§

fn clone(&self) -> LegacyTorClientConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for LegacyTorClientConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/legacy_tor_client/struct.LegacyTorClient.html b/crates/tor_interface/legacy_tor_client/struct.LegacyTorClient.html index 68bf2ca4..8cd60a5d 100644 --- a/crates/tor_interface/legacy_tor_client/struct.LegacyTorClient.html +++ b/crates/tor_interface/legacy_tor_client/struct.LegacyTorClient.html @@ -1,4 +1,4 @@ -LegacyTorClient in tor_interface::legacy_tor_client - Rust

Struct tor_interface::legacy_tor_client::LegacyTorClient

source ·
pub struct LegacyTorClient { /* private fields */ }
Expand description

A LegacyTorClient implements the TorProvider trait using a legacy c-tor daemon backend.

+LegacyTorClient in tor_interface::legacy_tor_client - Rust

Struct tor_interface::legacy_tor_client::LegacyTorClient

source ·
pub struct LegacyTorClient { /* private fields */ }
Expand description

A LegacyTorClient implements the TorProvider trait using a legacy c-tor daemon backend.

The tor process can either be launched and owned by LegacyTorClient, or it can use an already running tor-daemon. When using an already runnng tor-daemon, the TorProvider::bootstrap() automatically succeeds, presuming the connected tor-daemon has successfully bootstrapped.

The minimum supported c-tor is version 0.4.6.1.

Implementations§

source§

impl LegacyTorClient

source

pub fn new(config: LegacyTorClientConfig) -> Result<LegacyTorClient, Error>

Construct a new LegacyTorClient from a LegacyTorClientConfig.

@@ -20,7 +20,14 @@ virt_port: u16, authorized_clients: Option<&[X25519PublicKey]>, ) -> Result<OnionListener, Error>

Anonymously start an onion-service and return the associated OnionListener. Read more
source§

fn generate_token(&mut self) -> CircuitToken

Create a new CircuitToken.
source§

fn release_token(&mut self, circuit_token: CircuitToken)

Releaes a previously generated CircuitToken.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/legacy_tor_version/enum.Error.html b/crates/tor_interface/legacy_tor_version/enum.Error.html index 4e7b259d..c3374679 100644 --- a/crates/tor_interface/legacy_tor_version/enum.Error.html +++ b/crates/tor_interface/legacy_tor_version/enum.Error.html @@ -1,8 +1,15 @@ -Error in tor_interface::legacy_tor_version - Rust

Enum tor_interface::legacy_tor_version::Error

source ·
pub enum Error {
+Error in tor_interface::legacy_tor_version - Rust

Enum tor_interface::legacy_tor_version::Error

source ·
pub enum Error {
     ParseError(String),
 }
Expand description

LegacyTorVersion-specific error type

Variants§

§

ParseError(String)

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

§

impl Freeze for Error

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/legacy_tor_version/struct.LegacyTorVersion.html b/crates/tor_interface/legacy_tor_version/struct.LegacyTorVersion.html index ddee81f1..b4581560 100644 --- a/crates/tor_interface/legacy_tor_version/struct.LegacyTorVersion.html +++ b/crates/tor_interface/legacy_tor_version/struct.LegacyTorVersion.html @@ -1,4 +1,4 @@ -LegacyTorVersion in tor_interface::legacy_tor_version - Rust
pub struct LegacyTorVersion { /* private fields */ }
Expand description

Type representing a legacy c-tor daemon’s version number. This version conforms c-tor’s version-spec.

+LegacyTorVersion in tor_interface::legacy_tor_version - Rust
pub struct LegacyTorVersion { /* private fields */ }
Expand description

Type representing a legacy c-tor daemon’s version number. This version conforms c-tor’s version-spec.

Implementations§

source§

impl LegacyTorVersion

source

pub fn new( major: u32, minor: u32, @@ -11,7 +11,14 @@ sufficient, and should not be overridden without very good reason.

source§

impl PartialOrd for LegacyTorVersion

source§

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl ToString for LegacyTorVersion

source§

fn to_string(&self) -> String

Converts the given value to a String. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/mock_tor_client/enum.Error.html b/crates/tor_interface/mock_tor_client/enum.Error.html index 28326ee7..7d7d513c 100644 --- a/crates/tor_interface/mock_tor_client/enum.Error.html +++ b/crates/tor_interface/mock_tor_client/enum.Error.html @@ -1,4 +1,4 @@ -Error in tor_interface::mock_tor_client - Rust

Enum tor_interface::mock_tor_client::Error

source ·
pub enum Error {
+Error in tor_interface::mock_tor_client - Rust

Enum tor_interface::mock_tor_client::Error

source ·
pub enum Error {
     ClientNotBootstrapped(),
     ClientAlreadyBootstrapped(),
     OnionServiceNotFound(OnionAddr),
@@ -10,8 +10,15 @@
     ConnectFailed(TargetAddr),
     NotImplemented(),
 }
Expand description

MockTorClient-specific error type

-

Variants§

§

ClientNotBootstrapped()

§

ClientAlreadyBootstrapped()

§

OnionServiceNotFound(OnionAddr)

§

OnionServiceNotPublished(OnionAddr)

§

OnionServiceRequiresOnionAuth()

§

OnionServiceAuthInvalid()

§

TcpListenerBindFailed(Error)

§

TcpListenerLocalAddrFailed(Error)

§

ConnectFailed(TargetAddr)

§

NotImplemented()

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Variants§

§

ClientNotBootstrapped()

§

ClientAlreadyBootstrapped()

§

OnionServiceNotFound(OnionAddr)

§

OnionServiceNotPublished(OnionAddr)

§

OnionServiceRequiresOnionAuth()

§

OnionServiceAuthInvalid()

§

TcpListenerBindFailed(Error)

§

TcpListenerLocalAddrFailed(Error)

§

ConnectFailed(TargetAddr)

§

NotImplemented()

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl !RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl !UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/mock_tor_client/struct.MockTorClient.html b/crates/tor_interface/mock_tor_client/struct.MockTorClient.html index 04226436..aab34483 100644 --- a/crates/tor_interface/mock_tor_client/struct.MockTorClient.html +++ b/crates/tor_interface/mock_tor_client/struct.MockTorClient.html @@ -1,4 +1,4 @@ -MockTorClient in tor_interface::mock_tor_client - Rust

Struct tor_interface::mock_tor_client::MockTorClient

source ·
pub struct MockTorClient { /* private fields */ }
Expand description

A mock TorProvider implementation for testing.

+MockTorClient in tor_interface::mock_tor_client - Rust

Struct tor_interface::mock_tor_client::MockTorClient

source ·
pub struct MockTorClient { /* private fields */ }
Expand description

A mock TorProvider implementation for testing.

MockTorClient implements the TorProvider trait. It creates a fake, in-process Tor Network using local socekts and listeners. No actual traffic ever leaves the local host.

Mock onion-services can be created, connected to, and communiccated with. Connecting to clearnet targets always succeeds by connecting to single local endpoint, but will never send any traffic to connecting clients.

Implementations§

source§

impl MockTorClient

source

pub fn new() -> MockTorClient

Construt a new MockTorClient.

@@ -19,7 +19,14 @@ virt_port: u16, authorized_clients: Option<&[X25519PublicKey]>, ) -> Result<OnionListener, Error>

Anonymously start an onion-service and return the associated OnionListener. Read more
source§

fn generate_token(&mut self) -> CircuitToken

Create a new CircuitToken.
source§

fn release_token(&mut self, _token: CircuitToken)

Releaes a previously generated CircuitToken.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/proxy/enum.ProxyConfig.html b/crates/tor_interface/proxy/enum.ProxyConfig.html index 65f20206..7bb7a5ed 100644 --- a/crates/tor_interface/proxy/enum.ProxyConfig.html +++ b/crates/tor_interface/proxy/enum.ProxyConfig.html @@ -1,4 +1,4 @@ -ProxyConfig in tor_interface::proxy - Rust

Enum tor_interface::proxy::ProxyConfig

source ·
pub enum ProxyConfig {
+ProxyConfig in tor_interface::proxy - Rust

Enum tor_interface::proxy::ProxyConfig

source ·
pub enum ProxyConfig {
     Socks4(Socks4ProxyConfig),
     Socks5(Socks5ProxyConfig),
     Https(HttpsProxyConfig),
@@ -6,8 +6,15 @@
 

Variants§

§

Socks4(Socks4ProxyConfig)

A SOCKS4 proxy

§

Socks5(Socks5ProxyConfig)

A SOCKS5 proxy

§

Https(HttpsProxyConfig)

An HTTP CONNECT proxy

-

Trait Implementations§

source§

impl Clone for ProxyConfig

source§

fn clone(&self) -> ProxyConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ProxyConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<HttpsProxyConfig> for ProxyConfig

source§

fn from(config: HttpsProxyConfig) -> Self

Converts to this type from the input type.
source§

impl From<Socks4ProxyConfig> for ProxyConfig

source§

fn from(config: Socks4ProxyConfig) -> Self

Converts to this type from the input type.
source§

impl From<Socks5ProxyConfig> for ProxyConfig

source§

fn from(config: Socks5ProxyConfig) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Trait Implementations§

source§

impl Clone for ProxyConfig

source§

fn clone(&self) -> ProxyConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ProxyConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<HttpsProxyConfig> for ProxyConfig

source§

fn from(config: HttpsProxyConfig) -> Self

Converts to this type from the input type.
source§

impl From<Socks4ProxyConfig> for ProxyConfig

source§

fn from(config: Socks4ProxyConfig) -> Self

Converts to this type from the input type.
source§

impl From<Socks5ProxyConfig> for ProxyConfig

source§

fn from(config: Socks5ProxyConfig) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/proxy/enum.ProxyConfigError.html b/crates/tor_interface/proxy/enum.ProxyConfigError.html index f6528706..2e60ba2f 100644 --- a/crates/tor_interface/proxy/enum.ProxyConfigError.html +++ b/crates/tor_interface/proxy/enum.ProxyConfigError.html @@ -1,9 +1,16 @@ -ProxyConfigError in tor_interface::proxy - Rust

Enum tor_interface::proxy::ProxyConfigError

source ·
pub enum ProxyConfigError {
+ProxyConfigError in tor_interface::proxy - Rust

Enum tor_interface::proxy::ProxyConfigError

source ·
pub enum ProxyConfigError {
     Generic(String),
 }
Expand description

Error type for the proxy module

Variants§

§

Generic(String)

An error returned when constructing a proxy configuration with invalid parameters

-

Trait Implementations§

source§

impl Debug for ProxyConfigError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ProxyConfigError

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ProxyConfigError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Trait Implementations§

source§

impl Debug for ProxyConfigError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for ProxyConfigError

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for ProxyConfigError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/proxy/struct.HttpsProxyConfig.html b/crates/tor_interface/proxy/struct.HttpsProxyConfig.html index e8f8c877..eb54b0e2 100644 --- a/crates/tor_interface/proxy/struct.HttpsProxyConfig.html +++ b/crates/tor_interface/proxy/struct.HttpsProxyConfig.html @@ -1,11 +1,18 @@ -HttpsProxyConfig in tor_interface::proxy - Rust

Struct tor_interface::proxy::HttpsProxyConfig

source ·
pub struct HttpsProxyConfig { /* private fields */ }
Expand description

Configuration for an HTTP CONNECT proxy (HTTPSProxy in c-tor torrc configuration)

+HttpsProxyConfig in tor_interface::proxy - Rust

Struct tor_interface::proxy::HttpsProxyConfig

source ·
pub struct HttpsProxyConfig { /* private fields */ }
Expand description

Configuration for an HTTP CONNECT proxy (HTTPSProxy in c-tor torrc configuration)

Implementations§

source§

impl HttpsProxyConfig

source

pub fn new( address: TargetAddr, username: Option<String>, password: Option<String>, ) -> Result<Self, ProxyConfigError>

Construct a new HttpsProxyConfig. The address argument must not be a crate::tor_provider::TargetAddr::OnionService and its port must not be 0. The username argument, if present, must not contain the : (colon) character.

Trait Implementations§

source§

impl Clone for HttpsProxyConfig

source§

fn clone(&self) -> HttpsProxyConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for HttpsProxyConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<HttpsProxyConfig> for ProxyConfig

source§

fn from(config: HttpsProxyConfig) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/proxy/struct.Socks4ProxyConfig.html b/crates/tor_interface/proxy/struct.Socks4ProxyConfig.html index f7042149..0c9adc3f 100644 --- a/crates/tor_interface/proxy/struct.Socks4ProxyConfig.html +++ b/crates/tor_interface/proxy/struct.Socks4ProxyConfig.html @@ -1,7 +1,14 @@ -Socks4ProxyConfig in tor_interface::proxy - Rust

Struct tor_interface::proxy::Socks4ProxyConfig

source ·
pub struct Socks4ProxyConfig { /* private fields */ }
Expand description

Configuration for a SOCKS4 proxy

+Socks4ProxyConfig in tor_interface::proxy - Rust

Struct tor_interface::proxy::Socks4ProxyConfig

source ·
pub struct Socks4ProxyConfig { /* private fields */ }
Expand description

Configuration for a SOCKS4 proxy

Implementations§

source§

impl Socks4ProxyConfig

source

pub fn new(address: TargetAddr) -> Result<Self, ProxyConfigError>

Construct a new Socks4ProxyConfig. The address argument must not be a crate::tor_provider::TargetAddr::OnionService and its port must not be 0.

Trait Implementations§

source§

impl Clone for Socks4ProxyConfig

source§

fn clone(&self) -> Socks4ProxyConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Socks4ProxyConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<Socks4ProxyConfig> for ProxyConfig

source§

fn from(config: Socks4ProxyConfig) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/proxy/struct.Socks5ProxyConfig.html b/crates/tor_interface/proxy/struct.Socks5ProxyConfig.html index f38ef84a..7f44baec 100644 --- a/crates/tor_interface/proxy/struct.Socks5ProxyConfig.html +++ b/crates/tor_interface/proxy/struct.Socks5ProxyConfig.html @@ -1,11 +1,18 @@ -Socks5ProxyConfig in tor_interface::proxy - Rust

Struct tor_interface::proxy::Socks5ProxyConfig

source ·
pub struct Socks5ProxyConfig { /* private fields */ }
Expand description

Configuration for a SOCKS5 proxy

+Socks5ProxyConfig in tor_interface::proxy - Rust

Struct tor_interface::proxy::Socks5ProxyConfig

source ·
pub struct Socks5ProxyConfig { /* private fields */ }
Expand description

Configuration for a SOCKS5 proxy

Implementations§

source§

impl Socks5ProxyConfig

source

pub fn new( address: TargetAddr, username: Option<String>, password: Option<String>, ) -> Result<Self, ProxyConfigError>

Construct a new Socks5ProxyConfig. The address argument must not be a crate::tor_provider::TargetAddr::OnionService and its port must not be 0. The username and password arguments, if present, must each be less than 256 bytes long.

Trait Implementations§

source§

impl Clone for Socks5ProxyConfig

source§

fn clone(&self) -> Socks5ProxyConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Socks5ProxyConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<Socks5ProxyConfig> for ProxyConfig

source§

fn from(config: Socks5ProxyConfig) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/tor_crypto/enum.Error.html b/crates/tor_interface/tor_crypto/enum.Error.html index 6d7fddae..68c7010e 100644 --- a/crates/tor_interface/tor_crypto/enum.Error.html +++ b/crates/tor_interface/tor_crypto/enum.Error.html @@ -1,4 +1,4 @@ -Error in tor_interface::tor_crypto - Rust

Enum tor_interface::tor_crypto::Error

source ·
pub enum Error {
+Error in tor_interface::tor_crypto - Rust

Enum tor_interface::tor_crypto::Error

source ·
pub enum Error {
     ParseError(String),
     ConversionError(String),
     KeyInvalid,
@@ -6,8 +6,15 @@
 

Variants§

§

ParseError(String)

A error encountered converting a String to a tor_crypto type

§

ConversionError(String)

An error encountered converting between tor_crypto types

§

KeyInvalid

An error encountered converting from a raw byte representation

-

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

§

impl Freeze for Error

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more

Auto Trait Implementations§

§

impl Freeze for Error

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/tor_crypto/enum.SignBit.html b/crates/tor_interface/tor_crypto/enum.SignBit.html index b98c8f96..c7f445ee 100644 --- a/crates/tor_interface/tor_crypto/enum.SignBit.html +++ b/crates/tor_interface/tor_crypto/enum.SignBit.html @@ -1,9 +1,16 @@ -SignBit in tor_interface::tor_crypto - Rust

Enum tor_interface::tor_crypto::SignBit

source ·
pub enum SignBit {
+SignBit in tor_interface::tor_crypto - Rust

Enum tor_interface::tor_crypto::SignBit

source ·
pub enum SignBit {
     Zero,
     One,
 }
Expand description

An enum representing a single bit

Variants§

§

Zero

§

One

Trait Implementations§

source§

impl Clone for SignBit

source§

fn clone(&self) -> SignBit

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl From<SignBit> for bool

source§

fn from(signbit: SignBit) -> Self

Converts to this type from the input type.
source§

impl From<SignBit> for u8

source§

fn from(signbit: SignBit) -> Self

Converts to this type from the input type.
source§

impl From<bool> for SignBit

source§

fn from(signbit: bool) -> Self

Converts to this type from the input type.
source§

impl Copy for SignBit

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Copy,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> CloneToUninit for T
where diff --git a/crates/tor_interface/tor_crypto/struct.Ed25519PrivateKey.html b/crates/tor_interface/tor_crypto/struct.Ed25519PrivateKey.html index 567e9ad1..0e2d6dce 100644 --- a/crates/tor_interface/tor_crypto/struct.Ed25519PrivateKey.html +++ b/crates/tor_interface/tor_crypto/struct.Ed25519PrivateKey.html @@ -1,4 +1,4 @@ -Ed25519PrivateKey in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::Ed25519PrivateKey

source ·
pub struct Ed25519PrivateKey { /* private fields */ }
Expand description

An ed25519 private key.

+Ed25519PrivateKey in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::Ed25519PrivateKey

source ·
pub struct Ed25519PrivateKey { /* private fields */ }
Expand description

An ed25519 private key.

This key type is used with crate::tor_provider::TorProvider trait for hosting onion-services and can be convertd to an Ed25519PublicKey. It can also be used to sign messages and create an Ed25519Signature.

Implementations§

source§

impl Ed25519PrivateKey

A wrapper around tor_llcrypto::pk::ed25519::ExpandedKeypair.

source

pub fn generate() -> Ed25519PrivateKey

Securely generate a new Ed25519PrivateKey.

@@ -20,7 +20,14 @@
§⚠ Warning ⚠

Trait Implementations§

source§

impl Clone for Ed25519PrivateKey

source§

fn clone(&self) -> Ed25519PrivateKey

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Ed25519PrivateKey

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for Ed25519PrivateKey

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/tor_crypto/struct.Ed25519PublicKey.html b/crates/tor_interface/tor_crypto/struct.Ed25519PublicKey.html index 53ae8e51..1f26f461 100644 --- a/crates/tor_interface/tor_crypto/struct.Ed25519PublicKey.html +++ b/crates/tor_interface/tor_crypto/struct.Ed25519PublicKey.html @@ -1,4 +1,4 @@ -Ed25519PublicKey in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::Ed25519PublicKey

source ·
pub struct Ed25519PublicKey { /* private fields */ }
Expand description

An ed25519 public key.

+Ed25519PublicKey in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::Ed25519PublicKey

source ·
pub struct Ed25519PublicKey { /* private fields */ }
Expand description

An ed25519 public key.

This key type is derived from Ed25519PrivateKey and can be converted to a V3OnionServiceId. It can also be used to verify a Ed25519Signature.

Implementations§

source§

impl Ed25519PublicKey

A wrapper around tor_llcrypto::pk::ed25519::PublicKey

source

pub fn from_raw(raw: &[u8; 32]) -> Result<Ed25519PublicKey, Error>

Construct an Ed25519PublicKey from an array of bytes. Not all byte buffers of the required size can create a valid Ed25519PublicKey. Only buffers derived from Ed25519PublicKey::as_bytes() are required to convert correctly.

@@ -10,7 +10,14 @@

Trait Implementations§

source§

impl Clone for Ed25519PublicKey

source§

fn clone(&self) -> Ed25519PublicKey

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Ed25519PublicKey

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for Ed25519PublicKey

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/tor_crypto/struct.Ed25519Signature.html b/crates/tor_interface/tor_crypto/struct.Ed25519Signature.html index b8957234..8a788b6b 100644 --- a/crates/tor_interface/tor_crypto/struct.Ed25519Signature.html +++ b/crates/tor_interface/tor_crypto/struct.Ed25519Signature.html @@ -1,4 +1,4 @@ -Ed25519Signature in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::Ed25519Signature

source ·
pub struct Ed25519Signature { /* private fields */ }
Expand description

An ed25519 cryptographic signature

+Ed25519Signature in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::Ed25519Signature

source ·
pub struct Ed25519Signature { /* private fields */ }
Expand description

An ed25519 cryptographic signature

Implementations§

source§

impl Ed25519Signature

A wrapper around tor_llcrypto::pk::ed25519::Signature

source

pub fn from_raw(raw: &[u8; 64]) -> Result<Ed25519Signature, Error>

Construct an Ed25519Signature from an array of bytes.

source

pub fn verify(&self, message: &[u8], public_key: &Ed25519PublicKey) -> bool

Verify this Ed25519Signature for the given message and Ed25519PublicKey.

@@ -12,7 +12,14 @@

Trait Implementations§

source§

impl Clone for Ed25519Signature

source§

fn clone(&self) -> Ed25519Signature

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Ed25519Signature

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for Ed25519Signature

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/tor_crypto/struct.V3OnionServiceId.html b/crates/tor_interface/tor_crypto/struct.V3OnionServiceId.html index 3aaacc35..415df0b0 100644 --- a/crates/tor_interface/tor_crypto/struct.V3OnionServiceId.html +++ b/crates/tor_interface/tor_crypto/struct.V3OnionServiceId.html @@ -1,4 +1,4 @@ -V3OnionServiceId in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::V3OnionServiceId

source ·
pub struct V3OnionServiceId { /* private fields */ }
Expand description

A v3 onion-service id

+V3OnionServiceId in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::V3OnionServiceId

source ·
pub struct V3OnionServiceId { /* private fields */ }
Expand description

A v3 onion-service id

Implementations§

source§

impl V3OnionServiceId

Strongly-typed representation of a v3 onion-service id

source

pub fn from_string(service_id: &str) -> Result<V3OnionServiceId, Error>

Create a V3OnionServiceId from a String in the version 3 onion service digest format. From the tor address specification:

@@ -16,7 +16,7 @@
source

pub fn from_private_key(private_key: &Ed25519PrivateKey) -> V3OnionServiceId

Create a V3OnionServiceId from an Ed25519PrivateKey.

source

pub fn is_valid(service_id: &str) -> bool

Determine if the provided string is a valid representation of a V3OnionServiceId

source

pub fn as_bytes(&self) -> &[u8; 56]

View this service id as an array of bytes

-

Trait Implementations§

source§

impl Clone for V3OnionServiceId

source§

fn clone(&self) -> V3OnionServiceId

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for V3OnionServiceId

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for V3OnionServiceId

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Hash for V3OnionServiceId

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where +

Trait Implementations§

source§

impl Clone for V3OnionServiceId

source§

fn clone(&self) -> V3OnionServiceId

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for V3OnionServiceId

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for V3OnionServiceId

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Hash for V3OnionServiceId

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for V3OnionServiceId

source§

fn cmp(&self, other: &V3OnionServiceId) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where @@ -26,7 +26,14 @@ sufficient, and should not be overridden without very good reason.

source§

impl PartialOrd for V3OnionServiceId

source§

fn partial_cmp(&self, other: &V3OnionServiceId) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Eq for V3OnionServiceId

source§

impl StructuralPartialEq for V3OnionServiceId

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<Q, K> Comparable<K> for Q
where diff --git a/crates/tor_interface/tor_crypto/struct.X25519PrivateKey.html b/crates/tor_interface/tor_crypto/struct.X25519PrivateKey.html index c243084a..d13c9708 100644 --- a/crates/tor_interface/tor_crypto/struct.X25519PrivateKey.html +++ b/crates/tor_interface/tor_crypto/struct.X25519PrivateKey.html @@ -1,4 +1,4 @@ -X25519PrivateKey in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::X25519PrivateKey

source ·
pub struct X25519PrivateKey { /* private fields */ }
Expand description

An x25519 private key

+X25519PrivateKey in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::X25519PrivateKey

source ·
pub struct X25519PrivateKey { /* private fields */ }
Expand description

An x25519 private key

Implementations§

source§

impl X25519PrivateKey

A wrapper around tor_llcrypto::pk::curve25519::StaticSecret

source

pub fn generate() -> X25519PrivateKey

Securely generate a new X25519PrivateKey

source

pub fn from_raw(raw: &[u8; 32]) -> Result<X25519PrivateKey, Error>

Attempt to create an X25519PrivateKey from an array of bytes. Not all byte buffers of the required size can create a valid X25519PrivateKey. Only buffers derived from X25519PrivateKey::to_bytes() are required to convert correctly.

@@ -20,7 +20,14 @@
§⚠ Warning ⚠

Trait Implementations§

source§

impl Clone for X25519PrivateKey

source§

fn clone(&self) -> X25519PrivateKey

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for X25519PrivateKey

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for X25519PrivateKey

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/tor_crypto/struct.X25519PublicKey.html b/crates/tor_interface/tor_crypto/struct.X25519PublicKey.html index 5eefe42e..046f2ac5 100644 --- a/crates/tor_interface/tor_crypto/struct.X25519PublicKey.html +++ b/crates/tor_interface/tor_crypto/struct.X25519PublicKey.html @@ -1,4 +1,4 @@ -X25519PublicKey in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::X25519PublicKey

source ·
pub struct X25519PublicKey { /* private fields */ }
Expand description

An x25519 public key

+X25519PublicKey in tor_interface::tor_crypto - Rust

Struct tor_interface::tor_crypto::X25519PublicKey

source ·
pub struct X25519PublicKey { /* private fields */ }
Expand description

An x25519 public key

Implementations§

source§

impl X25519PublicKey

A wrapper around tor_llcrypto::pk::curve25519::PublicKey

source

pub fn from_private_key(private_key: &X25519PrivateKey) -> X25519PublicKey

Construct an X25519PublicKey from an X25519PrivateKey.

source

pub fn from_raw(raw: &[u8; 32]) -> X25519PublicKey

Construct an X25519PublicKey from an array of bytes.

@@ -15,7 +15,14 @@ Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for X25519PublicKey

source§

fn eq(&self, other: &X25519PublicKey) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for X25519PublicKey

source§

impl StructuralPartialEq for X25519PublicKey

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/tor_provider/enum.Error.html b/crates/tor_interface/tor_provider/enum.Error.html index ccd5fb40..05ffe6cd 100644 --- a/crates/tor_interface/tor_provider/enum.Error.html +++ b/crates/tor_interface/tor_provider/enum.Error.html @@ -1,11 +1,18 @@ -Error in tor_interface::tor_provider - Rust

Enum tor_interface::tor_provider::Error

source ·
pub enum Error {
+Error in tor_interface::tor_provider - Rust

Enum tor_interface::tor_provider::Error

source ·
pub enum Error {
     ParseFailure(String, String),
     Generic(String),
 }
Expand description

Various tor_provider errors.

Variants§

§

ParseFailure(String, String)

Failure parsing some string into a type

§

Generic(String)

Other miscellaneous error

-

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Trait Implementations§

source§

impl Debug for Error

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for Error

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for Error

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.
source§

impl From<Error> for Error

source§

fn from(error: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl Freeze for Error

§

impl RefUnwindSafe for Error

§

impl Send for Error

§

impl Sync for Error

§

impl Unpin for Error

§

impl UnwindSafe for Error

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/tor_provider/enum.OnionAddr.html b/crates/tor_interface/tor_provider/enum.OnionAddr.html index 21cf61ab..330e8dc7 100644 --- a/crates/tor_interface/tor_provider/enum.OnionAddr.html +++ b/crates/tor_interface/tor_provider/enum.OnionAddr.html @@ -1,7 +1,7 @@ -OnionAddr in tor_interface::tor_provider - Rust

Enum tor_interface::tor_provider::OnionAddr

source ·
pub enum OnionAddr {
+OnionAddr in tor_interface::tor_provider - Rust

Enum tor_interface::tor_provider::OnionAddr

source ·
pub enum OnionAddr {
     V3(OnionAddrV3),
 }
Expand description

An onion service address analog to std::net::SocketAddr

-

Variants§

Trait Implementations§

source§

impl Clone for OnionAddr

source§

fn clone(&self) -> OnionAddr

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for OnionAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for OnionAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl FromStr for OnionAddr

§

type Err = Error

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl Hash for OnionAddr

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where +

Variants§

Trait Implementations§

source§

impl Clone for OnionAddr

source§

fn clone(&self) -> OnionAddr

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for OnionAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for OnionAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl FromStr for OnionAddr

§

type Err = Error

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl Hash for OnionAddr

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for OnionAddr

source§

fn cmp(&self, other: &OnionAddr) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where @@ -11,7 +11,14 @@ sufficient, and should not be overridden without very good reason.

source§

impl PartialOrd for OnionAddr

source§

fn partial_cmp(&self, other: &OnionAddr) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Eq for OnionAddr

source§

impl StructuralPartialEq for OnionAddr

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<Q, K> Comparable<K> for Q
where diff --git a/crates/tor_interface/tor_provider/enum.TargetAddr.html b/crates/tor_interface/tor_provider/enum.TargetAddr.html index 799f7a08..7d044934 100644 --- a/crates/tor_interface/tor_provider/enum.TargetAddr.html +++ b/crates/tor_interface/tor_provider/enum.TargetAddr.html @@ -1,4 +1,4 @@ -TargetAddr in tor_interface::tor_provider - Rust

Enum tor_interface::tor_provider::TargetAddr

source ·
pub enum TargetAddr {
+TargetAddr in tor_interface::tor_provider - Rust

Enum tor_interface::tor_provider::TargetAddr

source ·
pub enum TargetAddr {
     Socket(SocketAddr),
     OnionService(OnionAddr),
     Domain(DomainAddr),
@@ -6,8 +6,15 @@
 

Variants§

§

Socket(SocketAddr)

An ip address and port

§

OnionService(OnionAddr)

An onion-service id and virtual port

§

Domain(DomainAddr)

A domain name and port

-

Trait Implementations§

source§

impl Clone for TargetAddr

source§

fn clone(&self) -> TargetAddr

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TargetAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for TargetAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<(V3OnionServiceId, u16)> for TargetAddr

source§

fn from(target_tuple: (V3OnionServiceId, u16)) -> Self

Converts to this type from the input type.
source§

impl FromStr for TargetAddr

§

type Err = Error

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where +

Trait Implementations§

source§

impl Clone for TargetAddr

source§

fn clone(&self) -> TargetAddr

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TargetAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for TargetAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<(V3OnionServiceId, u16)> for TargetAddr

source§

fn from(target_tuple: (V3OnionServiceId, u16)) -> Self

Converts to this type from the input type.
source§

impl FromStr for TargetAddr

§

type Err = Error

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where diff --git a/crates/tor_interface/tor_provider/enum.TorEvent.html b/crates/tor_interface/tor_provider/enum.TorEvent.html index e916febd..2cca81b3 100644 --- a/crates/tor_interface/tor_provider/enum.TorEvent.html +++ b/crates/tor_interface/tor_provider/enum.TorEvent.html @@ -1,4 +1,4 @@ -TorEvent in tor_interface::tor_provider - Rust

Enum tor_interface::tor_provider::TorEvent

source ·
pub enum TorEvent {
+TorEvent in tor_interface::tor_provider - Rust

Enum tor_interface::tor_provider::TorEvent

source ·
pub enum TorEvent {
     BootstrapStatus {
         progress: u32,
         tag: String,
@@ -22,7 +22,14 @@
 
§

OnionServicePublished

An onion-service has been published to the Tor Network and may now be reachable by clients.

Fields

§service_id: V3OnionServiceId

The service-id of the onion-service which has been published.

Trait Implementations§

source§

impl Debug for TorEvent

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/tor_provider/struct.DomainAddr.html b/crates/tor_interface/tor_provider/struct.DomainAddr.html index a80b64c2..9093e21e 100644 --- a/crates/tor_interface/tor_provider/struct.DomainAddr.html +++ b/crates/tor_interface/tor_provider/struct.DomainAddr.html @@ -1,9 +1,9 @@ -DomainAddr in tor_interface::tor_provider - Rust

Struct tor_interface::tor_provider::DomainAddr

source ·
pub struct DomainAddr { /* private fields */ }
Expand description

A domain name analog to std::net::SocketAddr

+DomainAddr in tor_interface::tor_provider - Rust

Struct tor_interface::tor_provider::DomainAddr

source ·
pub struct DomainAddr { /* private fields */ }
Expand description

A domain name analog to std::net::SocketAddr

A DomainAddr must not end in “.onion”

Implementations§

source§

impl DomainAddr

A DomainAddr has a domain name (scuh as www.example.com) and a port

source

pub fn domain(&self) -> &str

Returns the domain name associated with this domain address.

source

pub fn port(&self) -> u16

Returns the port number associated with this domain address.

-

Trait Implementations§

source§

impl Clone for DomainAddr

source§

fn clone(&self) -> DomainAddr

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DomainAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for DomainAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl FromStr for DomainAddr

§

type Err = Error

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl Hash for DomainAddr

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where +

Trait Implementations§

source§

impl Clone for DomainAddr

source§

fn clone(&self) -> DomainAddr

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DomainAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Display for DomainAddr

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl FromStr for DomainAddr

§

type Err = Error

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl Hash for DomainAddr

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for DomainAddr

source§

fn cmp(&self, other: &DomainAddr) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where @@ -13,7 +13,14 @@ sufficient, and should not be overridden without very good reason.

source§

impl PartialOrd for DomainAddr

source§

fn partial_cmp(&self, other: &DomainAddr) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl TryFrom<(String, u16)> for DomainAddr

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(value: (String, u16)) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl Eq for DomainAddr

source§

impl StructuralPartialEq for DomainAddr

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<Q, K> Comparable<K> for Q
where diff --git a/crates/tor_interface/tor_provider/struct.OnionAddrV3.html b/crates/tor_interface/tor_provider/struct.OnionAddrV3.html index bbacfc97..8f040b31 100644 --- a/crates/tor_interface/tor_provider/struct.OnionAddrV3.html +++ b/crates/tor_interface/tor_provider/struct.OnionAddrV3.html @@ -1,4 +1,4 @@ -OnionAddrV3 in tor_interface::tor_provider - Rust

Struct tor_interface::tor_provider::OnionAddrV3

source ·
pub struct OnionAddrV3 { /* private fields */ }
Expand description

A version 3 onion service address.

+OnionAddrV3 in tor_interface::tor_provider - Rust

Struct tor_interface::tor_provider::OnionAddrV3

source ·
pub struct OnionAddrV3 { /* private fields */ }
Expand description

A version 3 onion service address.

Version 3 Onion Service addresses const of a crate::tor_crypto::V3OnionServiceId and a 16-bit port number.

Implementations§

source§

impl OnionAddrV3

source

pub fn new(service_id: V3OnionServiceId, virt_port: u16) -> OnionAddrV3

Create a new OnionAddrV3 from a crate::tor_crypto::V3OnionServiceId and port number.

source

pub fn service_id(&self) -> &V3OnionServiceId

Return the service id associated with this onion address.

@@ -13,7 +13,14 @@ sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd for OnionAddrV3

source§

fn partial_cmp(&self, other: &OnionAddrV3) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Eq for OnionAddrV3

source§

impl StructuralPartialEq for OnionAddrV3

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<Q, K> Comparable<K> for Q
where diff --git a/crates/tor_interface/tor_provider/struct.OnionListener.html b/crates/tor_interface/tor_provider/struct.OnionListener.html index 6e819487..3298e076 100644 --- a/crates/tor_interface/tor_provider/struct.OnionListener.html +++ b/crates/tor_interface/tor_provider/struct.OnionListener.html @@ -1,9 +1,16 @@ -OnionListener in tor_interface::tor_provider - Rust

Struct tor_interface::tor_provider::OnionListener

source ·
pub struct OnionListener { /* private fields */ }
Expand description

A wrapper around a std::net::TcpListener with some Tor-specific customisations.

+OnionListener in tor_interface::tor_provider - Rust

Struct tor_interface::tor_provider::OnionListener

source ·
pub struct OnionListener { /* private fields */ }
Expand description

A wrapper around a std::net::TcpListener with some Tor-specific customisations.

An onion-listener can be constructed using the TorProvider::listener() method.

Implementations§

source§

impl OnionListener

source

pub fn set_nonblocking(&self, nonblocking: bool) -> Result<(), Error>

Moves the underlying TcpListener into or out of nonblocking mode.

source

pub fn accept(&self) -> Result<Option<OnionStream>, Error>

Accept a new incoming connection from this listener.

Trait Implementations§

source§

impl Drop for OnionListener

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/tor_interface/tor_provider/struct.OnionStream.html b/crates/tor_interface/tor_provider/struct.OnionStream.html index 9befddcd..49fced6b 100644 --- a/crates/tor_interface/tor_provider/struct.OnionStream.html +++ b/crates/tor_interface/tor_provider/struct.OnionStream.html @@ -1,4 +1,4 @@ -OnionStream in tor_interface::tor_provider - Rust

Struct tor_interface::tor_provider::OnionStream

source ·
pub struct OnionStream { /* private fields */ }
Expand description

A wrapper around a std::net::TcpStream with some Tor-specific customisations

+OnionStream in tor_interface::tor_provider - Rust

Struct tor_interface::tor_provider::OnionStream

source ·
pub struct OnionStream { /* private fields */ }
Expand description

A wrapper around a std::net::TcpStream with some Tor-specific customisations

An onion-listener can be constructed using the TorProvider::connect() method.

Implementations§

source§

impl OnionStream

source

pub fn peer_addr(&self) -> Option<TargetAddr>

Returns the target address of the remote peer of this onion connection.

source

pub fn local_addr(&self) -> Option<OnionAddr>

Returns the onion address of the local connection for an incoming onion-service connection. Returns None for outgoing connections.

@@ -250,7 +250,14 @@
§ExamplesRead more
1.0.0 · source§

fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>

Attempts to write an entire buffer into this writer. Read more
source§

fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>

🔬This is a nightly-only experimental API. (write_all_vectored)
Attempts to write multiple buffers into this writer. Read more
1.0.0 · source§

fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<(), Error>

Writes a formatted string into this writer, returning any error encountered. Read more
1.0.0 · source§

fn by_ref(&mut self) -> &mut Self
where Self: Sized,

Creates a “by reference” adapter for this instance of Write. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where - T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where + T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where + T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where + T: 'a,

§

fn implicit( + self, + class: Class, + constructed: bool, + tag: u32, +) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast for T
where diff --git a/crates/type.impl/std/primitive.usize.js b/crates/type.impl/std/primitive.usize.js index 15d959d5..da014e4e 100644 --- a/crates/type.impl/std/primitive.usize.js +++ b/crates/type.impl/std/primitive.usize.js @@ -1,4 +1,4 @@ (function() {var type_impls = { -"gosling":[["
§

impl<R> RangeExt<usize> for R
where\n R: RangeBounds<usize>,

§

fn normalize(\n self,\n start: impl Into<Option<usize>>,\n end: impl Into<Option<usize>>,\n) -> Range<usize>

Normalizes a range-like type to a canonical half-open Range. Read more
§

fn intersection<R2>(self, other: R2) -> Option<Range<usize>>
where\n R2: RangeExt<usize>,

Finds the intersection between two range-likes. The produced Range\nspans only the elements common to both. Read more
§

fn union<R2>(self, other: R2) -> Option<Range<usize>>
where\n R2: RangeExt<usize>,

Finds the union between two range-likes. The produced Range spans all\nelements present in at least one of them. Read more
","RangeExt","gosling::context::HandshakeHandle"]], -"tor_interface":[["
§

impl<T> Accumulate<T> for usize

§

fn initial(_capacity: Option<usize>) -> usize

Create a new Extend of the correct type
§

fn accumulate(&mut self, _acc: T)

Accumulate the input into an accumulator
","Accumulate","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Add<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the + operator.
source§

fn add(self, other: &BigInt) -> BigInt

Performs the + operation. Read more
","Add<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Add<&BigInt> for usize

§

type Output = BigInt

The resulting type after applying the + operator.
source§

fn add(self, other: &BigInt) -> BigInt

Performs the + operation. Read more
","Add<&BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Add<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the + operator.
source§

fn add(self, other: &BigUint) -> BigUint

Performs the + operation. Read more
","Add<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Add<&BigUint> for usize

§

type Output = BigUint

The resulting type after applying the + operator.
source§

fn add(self, other: &BigUint) -> BigUint

Performs the + operation. Read more
","Add<&BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Add<&usize> for usize

§

type Output = <usize as Add>::Output

The resulting type after applying the + operator.
source§

fn add(self, other: &usize) -> <usize as Add>::Output

Performs the + operation. Read more
","Add<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Add<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the + operator.
source§

fn add(self, other: BigInt) -> BigInt

Performs the + operation. Read more
","Add","tor_interface::tor_provider::CircuitToken"],["
source§

impl Add<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the + operator.
source§

fn add(self, other: BigInt) -> BigInt

Performs the + operation. Read more
","Add","tor_interface::tor_provider::CircuitToken"],["
source§

impl Add<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the + operator.
source§

fn add(self, other: BigUint) -> BigUint

Performs the + operation. Read more
","Add","tor_interface::tor_provider::CircuitToken"],["
source§

impl Add<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the + operator.
source§

fn add(self, other: BigUint) -> BigUint

Performs the + operation. Read more
","Add","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Add for usize

§

type Output = usize

The resulting type after applying the + operator.
source§

fn add(self, other: usize) -> usize

Performs the + operation. Read more
","Add","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl AddAssign<&usize> for usize

source§

fn add_assign(&mut self, other: &usize)

Performs the += operation. Read more
","AddAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl AddAssign for usize

source§

fn add_assign(&mut self, other: usize)

Performs the += operation. Read more
","AddAssign","tor_interface::tor_provider::CircuitToken"],["
§

impl AsAny for usize

§

fn as_any(&self) -> &(dyn Any + 'static)

Returns thick pointer of &dyn Any type, that can be later downcasted\nback to a reference of the original type.
","AsAny","tor_interface::tor_provider::CircuitToken"],["
§

impl AsBytes for usize

§

fn as_bytes(&self) -> &[u8]

Gets the bytes of this value. Read more
§

fn as_bytes_mut(&mut self) -> &mut [u8]
where\n Self: FromBytes,

Gets the bytes of this value mutably. Read more
§

fn write_to(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to bytes. Read more
§

fn write_to_prefix(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to the prefix of bytes. Read more
§

fn write_to_suffix(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to the suffix of bytes. Read more
","AsBytes","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<f32> for usize

source§

fn as_(self) -> f32

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<f64> for usize

source§

fn as_(self) -> f64

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i128> for usize

source§

fn as_(self) -> i128

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i16> for usize

source§

fn as_(self) -> i16

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i32> for usize

source§

fn as_(self) -> i32

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i64> for usize

source§

fn as_(self) -> i64

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i8> for usize

source§

fn as_(self) -> i8

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<isize> for usize

source§

fn as_(self) -> isize

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u128> for usize

source§

fn as_(self) -> u128

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u16> for usize

source§

fn as_(self) -> u16

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u32> for usize

source§

fn as_(self) -> u32

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u64> for usize

source§

fn as_(self) -> u64

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u8> for usize

source§

fn as_(self) -> u8

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<usize> for usize

source§

fn as_(self) -> usize

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Binary for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Binary","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitAnd<&usize> for usize

§

type Output = <usize as BitAnd>::Output

The resulting type after applying the & operator.
source§

fn bitand(self, other: &usize) -> <usize as BitAnd>::Output

Performs the & operation. Read more
","BitAnd<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitAnd for usize

§

type Output = usize

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: usize) -> usize

Performs the & operation. Read more
","BitAnd","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl BitAndAssign<&usize> for usize

source§

fn bitand_assign(&mut self, other: &usize)

Performs the &= operation. Read more
","BitAndAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl BitAndAssign for usize

source§

fn bitand_assign(&mut self, other: usize)

Performs the &= operation. Read more
","BitAndAssign","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitOr<&usize> for usize

§

type Output = <usize as BitOr>::Output

The resulting type after applying the | operator.
source§

fn bitor(self, other: &usize) -> <usize as BitOr>::Output

Performs the | operation. Read more
","BitOr<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitOr for usize

§

type Output = usize

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: usize) -> usize

Performs the | operation. Read more
","BitOr","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl BitOrAssign<&usize> for usize

source§

fn bitor_assign(&mut self, other: &usize)

Performs the |= operation. Read more
","BitOrAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl BitOrAssign for usize

source§

fn bitor_assign(&mut self, other: usize)

Performs the |= operation. Read more
","BitOrAssign","tor_interface::tor_provider::CircuitToken"],["
§

impl BitRegister for usize

§

const ALL: usize = 18_446_744_073_709_551_615usize

The literal !0.
§

const INDX: u8 = _

The number of bits required to store an index in the range 0 .. BITS.
§

const MASK: u8 = _

A mask over all bits that can be used as an index within the element.\nThis is the value with the least significant INDX-many bits set high.
","BitRegister","tor_interface::tor_provider::CircuitToken"],["
§

impl<'a, T, O> BitSliceIndex<'a, T, O> for usize
where\n T: BitStore,\n O: BitOrder,

§

type Immut = BitRef<'a, Const, T, O>

The output type of immutable access.
§

type Mut = BitRef<'a, Mut, T, O>

The output type of mutable access.
§

fn get(\n self,\n bits: &'a BitSlice<T, O>,\n) -> Option<<usize as BitSliceIndex<'a, T, O>>::Immut>

Immutably indexes into a bit-slice, returning None if self is out of\nbounds. Read more
§

fn get_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> Option<<usize as BitSliceIndex<'a, T, O>>::Mut>

Mutably indexes into a bit-slice, returning None if self is out of\nbounds. Read more
§

unsafe fn get_unchecked(\n self,\n bits: &'a BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Immut

Immutably indexes into a bit-slice without doing any bounds checking. Read more
§

unsafe fn get_unchecked_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Mut

Mutably indexes into a bit-slice without doing any bounds checking. Read more
§

fn index(\n self,\n bits: &'a BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Immut

Immutably indexes into a bit-slice, panicking if self is out of\nbounds. Read more
§

fn index_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Mut

Mutably indexes into a bit-slice, panicking if self is out of bounds. Read more
","BitSliceIndex<'a, T, O>","tor_interface::tor_provider::CircuitToken"],["
§

impl BitStore for usize

§

type Access = Cell<usize>

The unsigned integers will only be BitStore type parameters\nfor handles to unaliased memory, following the normal Rust\nreference rules.

\n
§

type Mem = usize

The element type used in the memory region underlying a BitSlice. It\nis always one of the unsigned integer fundamentals.
§

type Alias = BitSafeUsize

A sibling BitStore implementor that is known to be alias-safe. It is\nused when a BitSlice introduces multiple handles that view the same\nmemory location, and at least one of them has write capabilities to it.\nIt must have the same underlying memory type, and can only change access\npatterns or public-facing usage.
§

type Unalias = usize

The inverse of ::Alias. It is used when a BitSlice removes the\nconditions that required a T -> T::Alias transition.
§

const ZERO: usize = 0usize

The zero constant.
§

fn new(value: <usize as BitStore>::Mem) -> usize

Wraps a raw memory value as a BitStore type.
§

fn load_value(&self) -> <usize as BitStore>::Mem

Loads a value out of the memory system according to the ::Access\nrules. This may be called when the value is aliased by a write-capable\nreference.
§

fn store_value(&mut self, value: <usize as BitStore>::Mem)

Stores a value into the memory system. This is only called when there\nare no other handles to the value, and it may bypass ::Access\nconstraints.
§

const ALIGNED_TO_SIZE: [(); 1] = _

All implementors are required to have their alignment match their size. Read more
§

const ALIAS_WIDTH: [(); 1] = _

All implementors are required to have Self and Self::Alias be equal\nin representation. This is true by fiat for all types except the\nunsigned integers. Read more
§

fn get_bit<O>(&self, index: BitIdx<Self::Mem>) -> bool
where\n O: BitOrder,

Reads a single bit out of the memory system according to the ::Access\nrules. This is lifted from BitAccess so that it can be used\nelsewhere without additional casts. Read more
","BitStore","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitXor<&usize> for usize

§

type Output = <usize as BitXor>::Output

The resulting type after applying the ^ operator.
source§

fn bitxor(self, other: &usize) -> <usize as BitXor>::Output

Performs the ^ operation. Read more
","BitXor<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitXor for usize

§

type Output = usize

The resulting type after applying the ^ operator.
source§

fn bitxor(self, other: usize) -> usize

Performs the ^ operation. Read more
","BitXor","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl BitXorAssign<&usize> for usize

source§

fn bitxor_assign(&mut self, other: &usize)

Performs the ^= operation. Read more
","BitXorAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl BitXorAssign for usize

source§

fn bitxor_assign(&mut self, other: usize)

Performs the ^= operation. Read more
","BitXorAssign","tor_interface::tor_provider::CircuitToken"],["
§

impl Bits for usize

§

const EMPTY: usize = 0usize

A value with all bits unset.
§

const ALL: usize = 18_446_744_073_709_551_615usize

A value with all bits set.
","Bits","tor_interface::tor_provider::CircuitToken"],["
source§

impl Bounded for usize

source§

fn min_value() -> usize

Returns the smallest finite number this type can represent
source§

fn max_value() -> usize

Returns the largest finite number this type can represent
","Bounded","tor_interface::tor_provider::CircuitToken"],["
§

impl CastSigned for usize

§

type Signed = isize

The signed integer type with the same size as Self.
§

fn cast_signed(self) -> <usize as CastSigned>::Signed

Cast an integer to the signed integer of the same size.
","CastSigned","tor_interface::tor_provider::CircuitToken"],["
§

impl CastUnsigned for usize

§

type Unsigned = usize

The unsigned integer type with the same size as Self.
§

fn cast_unsigned(self) -> <usize as CastUnsigned>::Unsigned

Cast an integer to the unsigned integer of the same size.
","CastUnsigned","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedAdd for usize

source§

fn checked_add(&self, v: &usize) -> Option<usize>

Adds two numbers, checking for overflow. If overflow happens, None is\nreturned.
","CheckedAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedDiv for usize

source§

fn checked_div(&self, v: &usize) -> Option<usize>

Divides two numbers, checking for underflow, overflow and division by\nzero. If any of that happens, None is returned.
","CheckedDiv","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedEuclid for usize

source§

fn checked_div_euclid(&self, v: &usize) -> Option<usize>

Performs euclid division that returns None instead of panicking on division by zero\nand instead of wrapping around on underflow and overflow.
source§

fn checked_rem_euclid(&self, v: &usize) -> Option<usize>

Finds the euclid remainder of dividing two numbers, checking for underflow, overflow and\ndivision by zero. If any of that happens, None is returned.
source§

fn checked_div_rem_euclid(&self, v: &Self) -> Option<(Self, Self)>

Returns both the quotient and remainder from checked Euclidean division. Read more
","CheckedEuclid","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedMul for usize

source§

fn checked_mul(&self, v: &usize) -> Option<usize>

Multiplies two numbers, checking for underflow or overflow. If underflow\nor overflow happens, None is returned.
","CheckedMul","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedNeg for usize

source§

fn checked_neg(&self) -> Option<usize>

Negates a number, returning None for results that can’t be represented, like signed MIN\nvalues that can’t be positive, or non-zero unsigned values that can’t be negative. Read more
","CheckedNeg","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedRem for usize

source§

fn checked_rem(&self, v: &usize) -> Option<usize>

Finds the remainder of dividing two numbers, checking for underflow, overflow and division\nby zero. If any of that happens, None is returned. Read more
","CheckedRem","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedShl for usize

source§

fn checked_shl(&self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None\nif rhs is larger than or equal to the number of bits in self. Read more
","CheckedShl","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedShr for usize

source§

fn checked_shr(&self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None\nif rhs is larger than or equal to the number of bits in self. Read more
","CheckedShr","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedSub for usize

source§

fn checked_sub(&self, v: &usize) -> Option<usize>

Subtracts two numbers, checking for underflow. If underflow happens,\nNone is returned.
","CheckedSub","tor_interface::tor_provider::CircuitToken"],["
§

impl<T> CheckedSum<usize> for T
where\n T: IntoIterator<Item = usize>,

§

fn checked_sum(self) -> Result<usize, Error>

Iterate over the values of this type, computing a checked sum. Read more
","CheckedSum","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Clone for usize

source§

fn clone(&self) -> usize

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
","Clone","tor_interface::tor_provider::CircuitToken"],["
source§

impl ConstOne for usize

source§

const ONE: usize = 1usize

The multiplicative identity element of Self, 1.
","ConstOne","tor_interface::tor_provider::CircuitToken"],["
source§

impl ConstZero for usize

source§

const ZERO: usize = 0usize

The additive identity element of Self, 0.
","ConstZero","tor_interface::tor_provider::CircuitToken"],["
source§

impl ConstantTimeEq for usize

source§

fn ct_eq(&self, other: &usize) -> Choice

Determine if two items are equal. Read more
source§

fn ct_ne(&self, other: &Self) -> Choice

Determine if two items are NOT equal. Read more
","ConstantTimeEq","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Debug for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Debug","tor_interface::tor_provider::CircuitToken"],["
§

impl Decode for usize

Decode a usize.

\n

Uses [Decode] impl on u32 and then converts to a usize, handling\npotential overflow if usize is smaller than u32.

\n

Enforces a library-internal limit of 1048575, as the main use case for\nusize is length prefixes.

\n
§

type Error = Error

Type returned in the event of a decoding error.
§

fn decode(reader: &mut impl Reader) -> Result<usize, Error>

Attempt to decode a value of this type using the provided [Reader].
","Decode","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Default for usize

source§

fn default() -> usize

Returns the default value of 0

\n
","Default","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'de> Deserialize<'de> for usize

source§

fn deserialize<D>(\n deserializer: D,\n) -> Result<usize, <D as Deserializer<'de>>::Error>
where\n D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Display for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Display","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Div<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the / operator.
source§

fn div(self, other: &BigInt) -> BigInt

Performs the / operation. Read more
","Div<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Div<&BigInt> for usize

§

type Output = BigInt

The resulting type after applying the / operator.
source§

fn div(self, other: &BigInt) -> BigInt

Performs the / operation. Read more
","Div<&BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Div<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the / operator.
source§

fn div(self, other: &BigUint) -> BigUint

Performs the / operation. Read more
","Div<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Div<&BigUint> for usize

§

type Output = BigUint

The resulting type after applying the / operator.
source§

fn div(self, other: &BigUint) -> BigUint

Performs the / operation. Read more
","Div<&BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Div<&usize> for usize

§

type Output = <usize as Div>::Output

The resulting type after applying the / operator.
source§

fn div(self, other: &usize) -> <usize as Div>::Output

Performs the / operation. Read more
","Div<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Div<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the / operator.
source§

fn div(self, other: BigInt) -> BigInt

Performs the / operation. Read more
","Div","tor_interface::tor_provider::CircuitToken"],["
source§

impl Div<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the / operator.
source§

fn div(self, other: BigInt) -> BigInt

Performs the / operation. Read more
","Div","tor_interface::tor_provider::CircuitToken"],["
source§

impl Div<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the / operator.
source§

fn div(self, other: BigUint) -> BigUint

Performs the / operation. Read more
","Div","tor_interface::tor_provider::CircuitToken"],["
source§

impl Div<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the / operator.
source§

fn div(self, other: BigUint) -> BigUint

Performs the / operation. Read more
","Div","tor_interface::tor_provider::CircuitToken"],["
1.51.0 · source§

impl Div<NonZero<usize>> for usize

source§

fn div(self, other: NonZero<usize>) -> usize

This operation rounds towards zero, truncating any fractional\npart of the exact result, and cannot panic.

\n
§

type Output = usize

The resulting type after applying the / operator.
","Div>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Div for usize

This operation rounds towards zero, truncating any\nfractional part of the exact result.

\n

§Panics

\n

This operation will panic if other == 0.

\n
§

type Output = usize

The resulting type after applying the / operator.
source§

fn div(self, other: usize) -> usize

Performs the / operation. Read more
","Div","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl DivAssign<&usize> for usize

source§

fn div_assign(&mut self, other: &usize)

Performs the /= operation. Read more
","DivAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.79.0 · source§

impl DivAssign<NonZero<usize>> for usize

source§

fn div_assign(&mut self, other: NonZero<usize>)

This operation rounds towards zero, truncating any fractional\npart of the exact result, and cannot panic.

\n
","DivAssign>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl DivAssign for usize

source§

fn div_assign(&mut self, other: usize)

Performs the /= operation. Read more
","DivAssign","tor_interface::tor_provider::CircuitToken"],["
§

impl Encode for usize

Encode a usize as a uint32 as described in RFC4251 § 5.

\n

Uses [Encode] impl on u32 after converting from a usize, handling\npotential overflow if usize is bigger than u32.

\n
§

fn encoded_len(&self) -> Result<usize, Error>

Get the length of this type encoded in bytes, prior to Base64 encoding.
§

fn encode(&self, writer: &mut impl Writer) -> Result<(), Error>

Encode this value using the provided [Writer].
§

fn encoded_len_prefixed(&self) -> Result<usize, Error>

Return the length of this type after encoding when prepended with a\nuint32 length prefix.
§

fn encode_prefixed(&self, writer: &mut impl Writer) -> Result<(), Error>

Encode this value, first prepending a uint32 length prefix\nset to [Encode::encoded_len].
","Encode","tor_interface::tor_provider::CircuitToken"],["
source§

impl Euclid for usize

source§

fn div_euclid(&self, v: &usize) -> usize

Calculates Euclidean division, the matching method for rem_euclid. Read more
source§

fn rem_euclid(&self, v: &usize) -> usize

Calculates the least nonnegative remainder of self (mod v). Read more
source§

fn div_rem_euclid(&self, v: &Self) -> (Self, Self)

Returns both the quotient and remainder from Euclidean division. Read more
","Euclid","tor_interface::tor_provider::CircuitToken"],["
source§

impl FmtConst for usize

source§

fn fmt_const(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Print a const expression representing this value.
","FmtConst","tor_interface::tor_provider::CircuitToken"],["
source§

impl From<Alignment> for usize

source§

fn from(align: Alignment) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<ByteQty> for usize

§

fn from(value: ByteQty) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<HopNum> for usize

§

fn from(hop: HopNum) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<HsDirPos> for usize

§

fn from(value: HsDirPos) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<IntroPtIndex> for usize

§

fn from(value: IntroPtIndex) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl<const MIN: usize, const MAX: usize> From<RangedUsize<MIN, MAX>> for usize

§

fn from(value: RangedUsize<MIN, MAX>) -> usize

Converts to this type from the input type.
","From>","tor_interface::tor_provider::CircuitToken"],["
§

impl From<RouterStatusIdx> for usize

§

fn from(value: RouterStatusIdx) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<State> for usize

§

fn from(src: State) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<Token> for usize

§

fn from(val: Token) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<Token> for usize

§

fn from(val: Token) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl<O> From<U16<O>> for usize
where\n O: ByteOrder,

§

fn from(x: U16<O>) -> usize

Converts to this type from the input type.
","From>","tor_interface::tor_provider::CircuitToken"],["
1.28.0 · source§

impl From<bool> for usize

source§

fn from(small: bool) -> usize

Converts a bool to usize losslessly.\nThe resulting value is 0 for false and 1 for true values.

\n
§Examples
\n
assert_eq!(usize::from(true), 1);\nassert_eq!(usize::from(false), 0);
\n
","From","tor_interface::tor_provider::CircuitToken"],["
1.26.0 · source§

impl From<u16> for usize

source§

fn from(small: u16) -> usize

Converts u16 to usize losslessly.

\n
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<u24> for usize

§

fn from(val: u24) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<u40> for usize

§

fn from(val: u40) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<u48> for usize

§

fn from(val: u48) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<u56> for usize

§

fn from(val: u56) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
1.5.0 · source§

impl From<u8> for usize

source§

fn from(small: u8) -> usize

Converts u8 to usize losslessly.

\n
","From","tor_interface::tor_provider::CircuitToken"],["
source§

impl FromBytes for usize

§

type Bytes = [u8; 8]

source§

fn from_be_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its representation as a byte array in big endian. Read more
source§

fn from_le_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its representation as a byte array in little endian. Read more
source§

fn from_ne_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its memory representation as a byte array in native endianness. Read more
","FromBytes","tor_interface::tor_provider::CircuitToken"],["
§

impl FromBytes for usize

§

fn ref_from(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the given bytes as a &Self without copying. Read more
§

fn ref_from_prefix(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the prefix of the given bytes as a &Self without copying. Read more
§

fn ref_from_suffix(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the suffix of the given bytes as a &Self without copying. Read more
§

fn mut_from(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the given bytes as a &mut Self without copying. Read more
§

fn mut_from_prefix(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the prefix of the given bytes as a &mut Self without\ncopying. Read more
§

fn mut_from_suffix(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the suffix of the given bytes as a &mut Self without copying. Read more
§

fn slice_from(bytes: &[u8]) -> Option<&[Self]>
where\n Self: Sized,

Interprets the given bytes as a &[Self] without copying. Read more
§

fn slice_from_prefix(bytes: &[u8], count: usize) -> Option<(&[Self], &[u8])>
where\n Self: Sized,

Interprets the prefix of the given bytes as a &[Self] with length\nequal to count without copying. Read more
§

fn slice_from_suffix(bytes: &[u8], count: usize) -> Option<(&[u8], &[Self])>
where\n Self: Sized,

Interprets the suffix of the given bytes as a &[Self] with length\nequal to count without copying. Read more
§

fn mut_slice_from(bytes: &mut [u8]) -> Option<&mut [Self]>
where\n Self: Sized + AsBytes,

Interprets the given bytes as a &mut [Self] without copying. Read more
§

fn mut_slice_from_prefix(\n bytes: &mut [u8],\n count: usize,\n) -> Option<(&mut [Self], &mut [u8])>
where\n Self: Sized + AsBytes,

Interprets the prefix of the given bytes as a &mut [Self] with length\nequal to count without copying. Read more
§

fn mut_slice_from_suffix(\n bytes: &mut [u8],\n count: usize,\n) -> Option<(&mut [u8], &mut [Self])>
where\n Self: Sized + AsBytes,

Interprets the suffix of the given bytes as a &mut [Self] with length\nequal to count without copying. Read more
§

fn read_from(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from bytes. Read more
§

fn read_from_prefix(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from the prefix of bytes. Read more
§

fn read_from_suffix(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from the suffix of bytes. Read more
","FromBytes","tor_interface::tor_provider::CircuitToken"],["
source§

impl FromPrimitive for usize

source§

fn from_isize(n: isize) -> Option<usize>

Converts an isize to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i8(n: i8) -> Option<usize>

Converts an i8 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i16(n: i16) -> Option<usize>

Converts an i16 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i32(n: i32) -> Option<usize>

Converts an i32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i64(n: i64) -> Option<usize>

Converts an i64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i128(n: i128) -> Option<usize>

Converts an i128 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
source§

fn from_usize(n: usize) -> Option<usize>

Converts a usize to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u8(n: u8) -> Option<usize>

Converts an u8 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u16(n: u16) -> Option<usize>

Converts an u16 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u32(n: u32) -> Option<usize>

Converts an u32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u64(n: u64) -> Option<usize>

Converts an u64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u128(n: u128) -> Option<usize>

Converts an u128 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
source§

fn from_f32(n: f32) -> Option<usize>

Converts a f32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_f64(n: f64) -> Option<usize>

Converts a f64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
","FromPrimitive","tor_interface::tor_provider::CircuitToken"],["
§

impl FromSql for usize

§

fn column_result(value: ValueRef<'_>) -> Result<usize, FromSqlError>

Converts SQLite value into Rust value.
","FromSql","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl FromStr for usize

§

type Err = ParseIntError

The associated error which can be returned from parsing.
source§

fn from_str(src: &str) -> Result<usize, ParseIntError>

Parses a string s to return a value of this type. Read more
","FromStr","tor_interface::tor_provider::CircuitToken"],["
§

impl FromZeroes for usize

§

fn zero(&mut self)

Overwrites self with zeroes. Read more
§

fn new_zeroed() -> Self
where\n Self: Sized,

Creates an instance of Self from zeroed bytes. Read more
","FromZeroes","tor_interface::tor_provider::CircuitToken"],["
§

impl Fundamental for usize

§

fn as_bool(self) -> bool

Tests self != 0.
§

fn as_char(self) -> Option<char>

Represents self as a Unicode Scalar Value, if possible.
§

fn as_i8(self) -> i8

Performs self as i8.
§

fn as_i16(self) -> i16

Performs self as i16.
§

fn as_i32(self) -> i32

Performs self as i32.
§

fn as_i64(self) -> i64

Performs self as i64.
§

fn as_i128(self) -> i128

Performs self as i128.
§

fn as_isize(self) -> isize

Performs self as isize.
§

fn as_u8(self) -> u8

Performs self as u8.
§

fn as_u16(self) -> u16

Performs self as u16.
§

fn as_u32(self) -> u32

Performs self as u32.
§

fn as_u64(self) -> u64

Performs self as u64.
§

fn as_u128(self) -> u128

Performs self as u128.
§

fn as_usize(self) -> usize

Performs self as usize.
§

fn as_f32(self) -> f32

Performs self as f32.
§

fn as_f64(self) -> f64

Performs self as f64.
","Fundamental","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Hash for usize

source§

fn hash<H>(&self, state: &mut H)
where\n H: Hasher,

Feeds this value into the given Hasher. Read more
source§

fn hash_slice<H>(data: &[usize], state: &mut H)
where\n H: Hasher,

Feeds a slice of this type into the given Hasher. Read more
","Hash","tor_interface::tor_provider::CircuitToken"],["
source§

impl Integer for usize

source§

fn div_floor(&self, other: &usize) -> usize

Unsigned integer division. Returns the same result as div (/).

\n
source§

fn mod_floor(&self, other: &usize) -> usize

Unsigned integer modulo operation. Returns the same result as rem (%).

\n
source§

fn gcd(&self, other: &usize) -> usize

Calculates the Greatest Common Divisor (GCD) of the number and other

\n
source§

fn lcm(&self, other: &usize) -> usize

Calculates the Lowest Common Multiple (LCM) of the number and other.

\n
source§

fn gcd_lcm(&self, other: &usize) -> (usize, usize)

Calculates the Greatest Common Divisor (GCD) and\nLowest Common Multiple (LCM) of the number and other.

\n
source§

fn is_multiple_of(&self, other: &usize) -> bool

Returns true if the number is a multiple of other.

\n
source§

fn is_even(&self) -> bool

Returns true if the number is divisible by 2.

\n
source§

fn is_odd(&self) -> bool

Returns true if the number is not divisible by 2.

\n
source§

fn div_rem(&self, other: &usize) -> (usize, usize)

Simultaneous truncated integer division and modulus.

\n
source§

fn div_ceil(&self, other: &usize) -> usize

Ceiled integer division. Read more
source§

fn extended_gcd_lcm(&self, other: &usize) -> (ExtendedGcd<usize>, usize)

Greatest common divisor, least common multiple, and Bézout coefficients.
source§

fn extended_gcd(&self, other: &Self) -> ExtendedGcd<Self>
where\n Self: Clone,

Greatest common divisor and Bézout coefficients. Read more
source§

fn divides(&self, other: &Self) -> bool

👎Deprecated: Please use is_multiple_of instead
Deprecated, use is_multiple_of instead.
source§

fn div_mod_floor(&self, other: &Self) -> (Self, Self)

Simultaneous floored integer division and modulus.\nReturns (quotient, remainder). Read more
source§

fn next_multiple_of(&self, other: &Self) -> Self
where\n Self: Clone,

Rounds up to nearest multiple of argument. Read more
source§

fn prev_multiple_of(&self, other: &Self) -> Self
where\n Self: Clone,

Rounds down to nearest multiple of argument. Read more
source§

fn dec(&mut self)
where\n Self: Clone,

Decrements self by one. Read more
source§

fn inc(&mut self)
where\n Self: Clone,

Increments self by one. Read more
","Integer","tor_interface::tor_provider::CircuitToken"],["
§

impl Integral for usize

§

const ZERO: usize = 0usize

The type’s zero value.
§

const ONE: usize = 1usize

The type’s step value.
§

const MIN: usize = 0usize

The type’s minimum value. This is zero for unsigned integers.
§

const MAX: usize = 18_446_744_073_709_551_615usize

The type’s maximum value.
§

const BITS: u32 = 64u32

The size of this type in bits.
§

fn min_value() -> usize

Returns the smallest value that can be represented by this integer type.
§

fn max_value() -> usize

Returns the largest value that can be represented by this integer type.
§

fn from_str_radix(src: &str, radix: u32) -> Result<usize, ParseIntError>

Converts a string slice in a given base to an integer. Read more
§

fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self.
§

fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self.
§

fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of\nself.
§

fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation of\nself.
§

fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation of\nself.
§

fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation of\nself.
§

fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, wrapping the\ntruncated bits to the end of the resulting integer. Read more
§

fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, wrapping the\ntruncated bits to the beginning of the resulting integer. Read more
§

fn swap_bytes(self) -> usize

Reverses the byte order of the integer.
§

fn reverse_bits(self) -> usize

Reverses the bit pattern of the integer.
§

fn from_be(self) -> usize

Converts an integer from big endian to the target’s endianness. Read more
§

fn from_le(self) -> usize

Converts an integer frm little endian to the target’s endianness. Read more
§

fn to_be(self) -> usize

Converts self to big endian from the target’s endianness. Read more
§

fn to_le(self) -> usize

Converts self to little endian from the target’s endianness. Read more
§

fn checked_add(self, rhs: usize) -> Option<usize>

Checked integer addition. Computes self + rhs, returning None if\noverflow occurred.
§

fn checked_sub(self, rhs: usize) -> Option<usize>

Checked integer subtraction. Computes self - rhs, returning None if\noverflow occurred.
§

fn checked_mul(self, rhs: usize) -> Option<usize>

Checked integer multiplication. Computes self * rhs, returning None\nif overflow occurred.
§

fn checked_div(self, rhs: usize) -> Option<usize>

Checked integer division. Computes self / rhs, returning None if\nrhs == 0 or the division results in overflow.
§

fn checked_div_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean division. Computes self.div_euclid(rhs), returning\nNone if rhs == 0 or the division results in overflow.
§

fn checked_rem(self, rhs: usize) -> Option<usize>

Checked integer remainder. Computes self % rhs, returning None if\nrhs == 0 or the division results in overflow.
§

fn checked_rem_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean remainder. Computes self.rem_euclid(rhs), returning\nNone if rhs == 0 or the division results in overflow.
§

fn checked_neg(self) -> Option<usize>

Checked negation. Computes -self, returning None if self == MIN. Read more
§

fn checked_shl(self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None if rhs is\nlarger than or equal to the number of bits in self.
§

fn checked_shr(self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None if rhs\nis larger than or equal to the number of bits in self.
§

fn checked_pow(self, rhs: u32) -> Option<usize>

Checked exponentiation. Computes self.pow(exp), returning None if\noverflow occurred.
§

fn saturating_add(self, rhs: usize) -> usize

Saturating integer addition. Computes self + rhs, saturating at the\nnumeric bounds instead of overflowing.
§

fn saturating_sub(self, rhs: usize) -> usize

Saturating integer subtraction. Computes self - rhs, saturating at the\nnumeric bounds instead of overflowing.
§

fn saturating_mul(self, rhs: usize) -> usize

Saturating integer multiplication. Computes self * rhs, saturating at\nthe numeric bounds instead of overflowing.
§

fn saturating_pow(self, rhs: u32) -> usize

Saturating integer exponentiation. Computes self.pow(exp), saturating\nat the numeric bounds instead of overflowing.
§

fn wrapping_add(self, rhs: usize) -> usize

Wrapping (modular) addition. Computes self + rhs, wrapping around at\nthe boundary of the type.
§

fn wrapping_sub(self, rhs: usize) -> usize

Wrapping (modular) subtraction. Computes self - rhs, wrapping around\nat the boundary of the type.
§

fn wrapping_mul(self, rhs: usize) -> usize

Wrapping (modular) multiplication. Computes self * rhs, wrapping\naround at the boundary of the type.
§

fn wrapping_div(self, rhs: usize) -> usize

Wrapping (modular) division. Computes self / rhs, wrapping around at\nthe boundary of the type. Read more
§

fn wrapping_div_euclid(self, rhs: usize) -> usize

Wrapping Euclidean division. Computes self.div_euclid(rhs), wrapping\naround at the boundary of the type. Read more
§

fn wrapping_rem(self, rhs: usize) -> usize

Wrapping (modular) remainder. Computes self % rhs, wrapping around at\nthe boundary of the type. Read more
§

fn wrapping_rem_euclid(self, rhs: usize) -> usize

Wrapping Euclidean remainder. Computes self.rem_euclid(rhs), wrapping\naround at the boundary of the type. Read more
§

fn wrapping_neg(self) -> usize

Wrapping (modular) negation. Computes -self, wrapping around at the\nboundary of the type. Read more
§

fn wrapping_shl(self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs), where mask\nremoves any high-order bits of rhs that would cause the shift to\nexceed the bit-width of the type. Read more
§

fn wrapping_shr(self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs), where mask\nremoves any high-order bits of rhs that would cause the shift to\nexceed the bit-width of the type. Read more
§

fn wrapping_pow(self, rhs: u32) -> usize

Wrapping (modular) exponentiation. Computes self.pow(exp), wrapping\naround at the boundary of the type.
§

fn overflowing_add(self, rhs: usize) -> (usize, bool)

Calculates self + rhs Read more
§

fn overflowing_sub(self, rhs: usize) -> (usize, bool)

Calculates self - rhs Read more
§

fn overflowing_mul(self, rhs: usize) -> (usize, bool)

Calculates the multiplication of self and rhs. Read more
§

fn overflowing_div(self, rhs: usize) -> (usize, bool)

Calculates the divisor when self is divided by rhs. Read more
§

fn overflowing_div_euclid(self, rhs: usize) -> (usize, bool)

Calculates the quotient of Euclidean division self.div_euclid(rhs). Read more
§

fn overflowing_rem(self, rhs: usize) -> (usize, bool)

Calculates the remainder when self is divided by rhs. Read more
§

fn overflowing_rem_euclid(self, rhs: usize) -> (usize, bool)

Overflowing Euclidean remainder. Calculates self.rem_euclid(rhs). Read more
§

fn overflowing_neg(self) -> (usize, bool)

Negates self, overflowing if this is equal to the minimum value. Read more
§

fn overflowing_shl(self, rhs: u32) -> (usize, bool)

Shifts self left by rhs bits. Read more
§

fn overflowing_shr(self, rhs: u32) -> (usize, bool)

Shifts self right by rhs bits. Read more
§

fn overflowing_pow(self, rhs: u32) -> (usize, bool)

Raises self to the power of exp, using exponentiation by squaring. Read more
§

fn pow(self, rhs: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring.
§

fn div_euclid(self, rhs: usize) -> usize

Calculates the quotient of Euclidean division of self by rhs. Read more
§

fn rem_euclid(self, rhs: usize) -> usize

Calculates the least nonnegative remainder of self (mod rhs). Read more
","Integral","tor_interface::tor_provider::CircuitToken"],["
source§

impl IntoBigInt for usize

source§

fn into_bigint(self) -> Option<BigInt>

Converts the value of self to a BigInt.
","IntoBigInt","tor_interface::tor_provider::CircuitToken"],["
source§

impl IntoBigUint for usize

source§

fn into_biguint(self) -> Option<BigUint>

Converts the value of self to a BigUint.
","IntoBigUint","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'de, E> IntoDeserializer<'de, E> for usize
where\n E: Error,

§

type Deserializer = UsizeDeserializer<E>

The type of the deserializer being converted into.
source§

fn into_deserializer(self) -> UsizeDeserializer<E>

Convert this value into a deserializer.
","IntoDeserializer<'de, E>","tor_interface::tor_provider::CircuitToken"],["
§

impl IntoNotification for usize

§

type Tag = ()

The tag data associated with a notification. Read more
§

type Notify = Notify

The notification type. Read more
§

fn into_notification(self) -> <usize as IntoNotification>::Notify

Convert this value into a notification. Read more
§

fn additional(self) -> Additional<Self::Notify>
where\n Self: Sized,

Convert this value into an additional notification. Read more
§

fn relaxed(self) -> Relaxed<Self::Notify>
where\n Self: Sized,

Don’t emit a fence for this notification. Read more
§

fn tag<T>(self, tag: T) -> Tag<Self::Notify, T>
where\n T: Clone,\n Self: Sized + IntoNotification<Tag = ()>,

Use a tag with this notification. Read more
§

fn tag_with<T, F>(self, tag: F) -> TagWith<Self::Notify, F>
where\n Self: Sized + IntoNotification<Tag = ()>,\n F: FnMut() -> T,

Use a function to generate a tag with this notification. Read more
","IntoNotification","tor_interface::tor_provider::CircuitToken"],["
1.42.0 · source§

impl LowerExp for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","LowerExp","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl LowerHex for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","LowerHex","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Mul<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the * operator.
source§

fn mul(self, other: &BigInt) -> BigInt

Performs the * operation. Read more
","Mul<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Mul<&BigInt> for usize

§

type Output = BigInt

The resulting type after applying the * operator.
source§

fn mul(self, other: &BigInt) -> BigInt

Performs the * operation. Read more
","Mul<&BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Mul<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the * operator.
source§

fn mul(self, other: &BigUint) -> BigUint

Performs the * operation. Read more
","Mul<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Mul<&BigUint> for usize

§

type Output = BigUint

The resulting type after applying the * operator.
source§

fn mul(self, other: &BigUint) -> BigUint

Performs the * operation. Read more
","Mul<&BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Mul<&usize> for usize

§

type Output = <usize as Mul>::Output

The resulting type after applying the * operator.
source§

fn mul(self, other: &usize) -> <usize as Mul>::Output

Performs the * operation. Read more
","Mul<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Mul<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the * operator.
source§

fn mul(self, other: BigInt) -> BigInt

Performs the * operation. Read more
","Mul","tor_interface::tor_provider::CircuitToken"],["
source§

impl Mul<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the * operator.
source§

fn mul(self, other: BigInt) -> BigInt

Performs the * operation. Read more
","Mul","tor_interface::tor_provider::CircuitToken"],["
source§

impl Mul<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the * operator.
source§

fn mul(self, other: BigUint) -> BigUint

Performs the * operation. Read more
","Mul","tor_interface::tor_provider::CircuitToken"],["
source§

impl Mul<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the * operator.
source§

fn mul(self, other: BigUint) -> BigUint

Performs the * operation. Read more
","Mul","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Mul for usize

§

type Output = usize

The resulting type after applying the * operator.
source§

fn mul(self, other: usize) -> usize

Performs the * operation. Read more
","Mul","tor_interface::tor_provider::CircuitToken"],["
source§

impl MulAdd for usize

§

type Output = usize

The resulting type after applying the fused multiply-add.
source§

fn mul_add(self, a: usize, b: usize) -> <usize as MulAdd>::Output

Performs the fused multiply-add operation (self * a) + b
","MulAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl MulAddAssign for usize

source§

fn mul_add_assign(&mut self, a: usize, b: usize)

Performs the fused multiply-add assignment operation *self = (*self * a) + b
","MulAddAssign","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl MulAssign<&usize> for usize

source§

fn mul_assign(&mut self, other: &usize)

Performs the *= operation. Read more
","MulAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl MulAssign for usize

source§

fn mul_assign(&mut self, other: usize)

Performs the *= operation. Read more
","MulAssign","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Not for usize

§

type Output = usize

The resulting type after applying the ! operator.
source§

fn not(self) -> usize

Performs the unary ! operation. Read more
","Not","tor_interface::tor_provider::CircuitToken"],["
source§

impl Num for usize

§

type FromStrRadixErr = ParseIntError

source§

fn from_str_radix(s: &str, radix: u32) -> Result<usize, ParseIntError>

Convert from a string and radix (typically 2..=36). Read more
","Num","tor_interface::tor_provider::CircuitToken"],["
source§

impl NumCast for usize

source§

fn from<N>(n: N) -> Option<usize>
where\n N: ToPrimitive,

Creates a number from another value that can be converted into\na primitive via the ToPrimitive trait. If the source value cannot be\nrepresented by the target type, then None is returned. Read more
","NumCast","tor_interface::tor_provider::CircuitToken"],["
§

impl Numeric for usize

§

type Bytes = [u8; 8]

The [u8; N] byte array that stores values of Self.
§

fn to_be_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nbig-endian (network) byte order.
§

fn to_le_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nlittle-endian byte order.
§

fn to_ne_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nnative byte order.
§

fn from_be_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its representation as a byte array in big\nendian.
§

fn from_le_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its representation as a byte array in little\nendian.
§

fn from_ne_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its memory representation as a byte array in\nnative endianness.
","Numeric","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Octal for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Octal","tor_interface::tor_provider::CircuitToken"],["
source§

impl One for usize

source§

fn one() -> usize

Returns the multiplicative identity element of Self, 1. Read more
source§

fn is_one(&self) -> bool

Returns true if self is equal to the multiplicative identity. Read more
source§

fn set_one(&mut self)

Sets self to the multiplicative identity element of Self, 1.
","One","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Ord for usize

source§

fn cmp(&self, other: &usize) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where\n Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
","Ord","tor_interface::tor_provider::CircuitToken"],["
source§

impl OverflowingAdd for usize

source§

fn overflowing_add(&self, v: &usize) -> (usize, bool)

Returns a tuple of the sum along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl OverflowingMul for usize

source§

fn overflowing_mul(&self, v: &usize) -> (usize, bool)

Returns a tuple of the product along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingMul","tor_interface::tor_provider::CircuitToken"],["
source§

impl OverflowingSub for usize

source§

fn overflowing_sub(&self, v: &usize) -> (usize, bool)

Returns a tuple of the difference along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingSub","tor_interface::tor_provider::CircuitToken"],["
§

impl ParseHex for usize

§

fn parse_hex(input: &str) -> Result<usize, ParseError>

Parse the value from hex.
","ParseHex","tor_interface::tor_provider::CircuitToken"],["
source§

impl PartialEq<Value> for usize

source§

fn eq(&self, other: &Value) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl PartialEq for usize

source§

fn eq(&self, other: &usize) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
source§

fn ne(&self, other: &usize) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl PartialOrd for usize

source§

fn partial_cmp(&self, other: &usize) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
source§

fn lt(&self, other: &usize) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
source§

fn le(&self, other: &usize) -> bool

This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
source§

fn ge(&self, other: &usize) -> bool

This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
source§

fn gt(&self, other: &usize) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
","PartialOrd","tor_interface::tor_provider::CircuitToken"],["
source§

impl PhfBorrow<usize> for usize

source§

fn borrow(&self) -> &usize

Convert a reference to self to a reference to the borrowed type.
","PhfBorrow","tor_interface::tor_provider::CircuitToken"],["
source§

impl PhfHash for usize

source§

fn phf_hash<H>(&self, state: &mut H)
where\n H: Hasher,

Feeds the value into the state given, updating the hasher as necessary.
source§

fn phf_hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the state provided.
","PhfHash","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Pow<&'a u16> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u16) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u16>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Pow<&'a u32> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u32) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u32>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Pow<&'a u8> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u8) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u8>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Pow<&'a usize> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a usize) -> usize

Returns self to the power rhs. Read more
","Pow<&'a usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<U> Pow<PInt<U>> for usize
where\n U: Unsigned + NonZero,

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: PInt<U>) -> <usize as Pow<PInt<U>>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<U, B> Pow<UInt<U, B>> for usize
where\n U: Unsigned,\n B: Bit,

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: UInt<U, B>) -> <usize as Pow<UInt<U, B>>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<UTerm> for usize

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: UTerm) -> <usize as Pow<UTerm>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<Z0> for usize

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: Z0) -> <usize as Pow<Z0>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<u16> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u16) -> usize

Returns self to the power rhs. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<u32> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u32) -> usize

Returns self to the power rhs. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<u8> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u8) -> usize

Returns self to the power rhs. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<usize> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: usize) -> usize

Returns self to the power rhs. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl PrimInt for usize

source§

fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self. Read more
source§

fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self. Read more
source§

fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation\nof self. Read more
source§

fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation\nof self. Read more
source§

fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation\nof self. Read more
source§

fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation\nof self. Read more
source§

fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, wrapping\nthe truncated bits to the end of the resulting integer. Read more
source§

fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, wrapping\nthe truncated bits to the beginning of the resulting integer. Read more
source§

fn signed_shl(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, filling\nzeros in the least significant bits. Read more
source§

fn signed_shr(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, copying\nthe “sign bit” in the most significant bits even for unsigned types. Read more
source§

fn unsigned_shl(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, filling\nzeros in the least significant bits. Read more
source§

fn unsigned_shr(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, filling\nzeros in the most significant bits. Read more
source§

fn swap_bytes(self) -> usize

Reverses the byte order of the integer. Read more
source§

fn reverse_bits(self) -> usize

Reverses the order of bits in the integer. Read more
source§

fn from_be(x: usize) -> usize

Convert an integer from big endian to the target’s endianness. Read more
source§

fn from_le(x: usize) -> usize

Convert an integer from little endian to the target’s endianness. Read more
source§

fn to_be(self) -> usize

Convert self to big endian from the target’s endianness. Read more
source§

fn to_le(self) -> usize

Convert self to little endian from the target’s endianness. Read more
source§

fn pow(self, exp: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring. Read more
","PrimInt","tor_interface::tor_provider::CircuitToken"],["
1.12.0 · source§

impl<'a> Product<&'a usize> for usize

source§

fn product<I>(iter: I) -> usize
where\n I: Iterator<Item = &'a usize>,

Method which takes an iterator and generates Self from the elements by\nmultiplying the items.
","Product<&'a usize>","tor_interface::tor_provider::CircuitToken"],["
1.12.0 · source§

impl Product for usize

source§

fn product<I>(iter: I) -> usize
where\n I: Iterator<Item = usize>,

Method which takes an iterator and generates Self from the elements by\nmultiplying the items.
","Product","tor_interface::tor_provider::CircuitToken"],["
§

impl<R> RangeExt<usize> for R
where\n R: RangeBounds<usize>,

§

fn normalize(\n self,\n start: impl Into<Option<usize>>,\n end: impl Into<Option<usize>>,\n) -> Range<usize>

Normalizes a range-like type to a canonical half-open Range. Read more
§

fn intersection<R2>(self, other: R2) -> Option<Range<usize>>
where\n R2: RangeExt<usize>,

Finds the intersection between two range-likes. The produced Range\nspans only the elements common to both. Read more
§

fn union<R2>(self, other: R2) -> Option<Range<usize>>
where\n R2: RangeExt<usize>,

Finds the union between two range-likes. The produced Range spans all\nelements present in at least one of them. Read more
","RangeExt","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Rem<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the % operator.
source§

fn rem(self, other: &BigInt) -> BigInt

Performs the % operation. Read more
","Rem<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Rem<&BigInt> for usize

§

type Output = BigInt

The resulting type after applying the % operator.
source§

fn rem(self, other: &BigInt) -> BigInt

Performs the % operation. Read more
","Rem<&BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Rem<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the % operator.
source§

fn rem(self, other: &BigUint) -> BigUint

Performs the % operation. Read more
","Rem<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Rem<&BigUint> for usize

§

type Output = BigUint

The resulting type after applying the % operator.
source§

fn rem(self, other: &BigUint) -> BigUint

Performs the % operation. Read more
","Rem<&BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Rem<&usize> for usize

§

type Output = <usize as Rem>::Output

The resulting type after applying the % operator.
source§

fn rem(self, other: &usize) -> <usize as Rem>::Output

Performs the % operation. Read more
","Rem<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Rem<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the % operator.
source§

fn rem(self, other: BigInt) -> BigInt

Performs the % operation. Read more
","Rem","tor_interface::tor_provider::CircuitToken"],["
source§

impl Rem<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the % operator.
source§

fn rem(self, other: BigInt) -> BigInt

Performs the % operation. Read more
","Rem","tor_interface::tor_provider::CircuitToken"],["
source§

impl Rem<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the % operator.
source§

fn rem(self, other: BigUint) -> BigUint

Performs the % operation. Read more
","Rem","tor_interface::tor_provider::CircuitToken"],["
source§

impl Rem<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the % operator.
source§

fn rem(self, other: BigUint) -> BigUint

Performs the % operation. Read more
","Rem","tor_interface::tor_provider::CircuitToken"],["
1.51.0 · source§

impl Rem<NonZero<usize>> for usize

source§

fn rem(self, other: NonZero<usize>) -> usize

This operation satisfies n % d == n - (n / d) * d, and cannot panic.

\n
§

type Output = usize

The resulting type after applying the % operator.
","Rem>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Rem for usize

This operation satisfies n % d == n - (n / d) * d. The\nresult has the same sign as the left operand.

\n

§Panics

\n

This operation will panic if other == 0.

\n
§

type Output = usize

The resulting type after applying the % operator.
source§

fn rem(self, other: usize) -> usize

Performs the % operation. Read more
","Rem","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> RemAssign<&'a BigUint> for usize

source§

fn rem_assign(&mut self, other: &BigUint)

Performs the %= operation. Read more
","RemAssign<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
source§

impl RemAssign<&BigUint> for usize

source§

fn rem_assign(&mut self, other: &BigUint)

Performs the %= operation. Read more
","RemAssign<&BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl RemAssign<&usize> for usize

source§

fn rem_assign(&mut self, other: &usize)

Performs the %= operation. Read more
","RemAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl RemAssign<BigUint> for usize

source§

fn rem_assign(&mut self, other: BigUint)

Performs the %= operation. Read more
","RemAssign","tor_interface::tor_provider::CircuitToken"],["
source§

impl RemAssign<BigUint> for usize

source§

fn rem_assign(&mut self, other: BigUint)

Performs the %= operation. Read more
","RemAssign","tor_interface::tor_provider::CircuitToken"],["
1.79.0 · source§

impl RemAssign<NonZero<usize>> for usize

source§

fn rem_assign(&mut self, other: NonZero<usize>)

This operation satisfies n % d == n - (n / d) * d, and cannot panic.

\n
","RemAssign>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl RemAssign for usize

source§

fn rem_assign(&mut self, other: usize)

Performs the %= operation. Read more
","RemAssign","tor_interface::tor_provider::CircuitToken"],["
source§

impl Roots for usize

source§

fn nth_root(&self, n: u32) -> usize

Returns the truncated principal nth root of an integer\n– if x >= 0 { ⌊ⁿ√x⌋ } else { ⌈ⁿ√x⌉ } Read more
source§

fn sqrt(&self) -> usize

Returns the truncated principal square root of an integer – ⌊√x⌋ Read more
source§

fn cbrt(&self) -> usize

Returns the truncated principal cube root of an integer –\nif x >= 0 { ⌊∛x⌋ } else { ⌈∛x⌉ } Read more
","Roots","tor_interface::tor_provider::CircuitToken"],["
§

impl RowIndex for usize

§

fn idx(&self, stmt: &Statement<'_>) -> Result<usize, Error>

Returns the index of the appropriate column, or None if no such\ncolumn exists.
","RowIndex","tor_interface::tor_provider::CircuitToken"],["
source§

impl SampleUniform for usize

§

type Sampler = UniformInt<usize>

The UniformSampler implementation supporting type X.
","SampleUniform","tor_interface::tor_provider::CircuitToken"],["
source§

impl Saturating for usize

source§

fn saturating_add(self, v: usize) -> usize

Saturating addition operator.\nReturns a+b, saturating at the numeric bounds instead of overflowing.
source§

fn saturating_sub(self, v: usize) -> usize

Saturating subtraction operator.\nReturns a-b, saturating at the numeric bounds instead of overflowing.
","Saturating","tor_interface::tor_provider::CircuitToken"],["
source§

impl SaturatingAdd for usize

source§

fn saturating_add(&self, v: &usize) -> usize

Saturating addition. Computes self + other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl SaturatingMul for usize

source§

fn saturating_mul(&self, v: &usize) -> usize

Saturating multiplication. Computes self * other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingMul","tor_interface::tor_provider::CircuitToken"],["
source§

impl SaturatingSub for usize

source§

fn saturating_sub(&self, v: &usize) -> usize

Saturating subtraction. Computes self - other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingSub","tor_interface::tor_provider::CircuitToken"],["
§

impl SeekNum for usize

§

fn from_block_byte<T>(\n block: T,\n byte: u8,\n bs: u8,\n) -> Result<usize, OverflowError>
where\n T: Counter,

Try to get position for block number block, byte position inside\nblock byte, and block size bs.
§

fn into_block_byte<T>(self, bs: u8) -> Result<(T, u8), OverflowError>
where\n T: Counter,

Try to get block number and bytes position for given block size bs.
","SeekNum","tor_interface::tor_provider::CircuitToken"],["
source§

impl Serialize for usize

source§

fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where\n S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i128> for usize

§

type Output = <usize as Shl<i128>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i128) -> <usize as Shl<i128>>::Output

Performs the << operation. Read more
","Shl<&i128>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i16> for usize

§

type Output = <usize as Shl<i16>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i16) -> <usize as Shl<i16>>::Output

Performs the << operation. Read more
","Shl<&i16>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i32> for usize

§

type Output = <usize as Shl<i32>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i32) -> <usize as Shl<i32>>::Output

Performs the << operation. Read more
","Shl<&i32>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i64> for usize

§

type Output = <usize as Shl<i64>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i64) -> <usize as Shl<i64>>::Output

Performs the << operation. Read more
","Shl<&i64>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i8> for usize

§

type Output = <usize as Shl<i8>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i8) -> <usize as Shl<i8>>::Output

Performs the << operation. Read more
","Shl<&i8>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&isize> for usize

§

type Output = <usize as Shl<isize>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &isize) -> <usize as Shl<isize>>::Output

Performs the << operation. Read more
","Shl<&isize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u128> for usize

§

type Output = <usize as Shl<u128>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u128) -> <usize as Shl<u128>>::Output

Performs the << operation. Read more
","Shl<&u128>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u16> for usize

§

type Output = <usize as Shl<u16>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u16) -> <usize as Shl<u16>>::Output

Performs the << operation. Read more
","Shl<&u16>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u32> for usize

§

type Output = <usize as Shl<u32>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u32) -> <usize as Shl<u32>>::Output

Performs the << operation. Read more
","Shl<&u32>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u64> for usize

§

type Output = <usize as Shl<u64>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u64) -> <usize as Shl<u64>>::Output

Performs the << operation. Read more
","Shl<&u64>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u8> for usize

§

type Output = <usize as Shl<u8>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u8) -> <usize as Shl<u8>>::Output

Performs the << operation. Read more
","Shl<&u8>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&usize> for usize

§

type Output = <usize as Shl>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &usize) -> <usize as Shl>::Output

Performs the << operation. Read more
","Shl<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i128> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i128) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i16> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i16) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i32> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i32) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i64> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i64) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i8> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i8) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<isize> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: isize) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u128> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u128) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u16> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u16) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u32> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u32) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u64> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u64) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u8> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u8) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: usize) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i128> for usize

source§

fn shl_assign(&mut self, other: &i128)

Performs the <<= operation. Read more
","ShlAssign<&i128>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i16> for usize

source§

fn shl_assign(&mut self, other: &i16)

Performs the <<= operation. Read more
","ShlAssign<&i16>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i32> for usize

source§

fn shl_assign(&mut self, other: &i32)

Performs the <<= operation. Read more
","ShlAssign<&i32>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i64> for usize

source§

fn shl_assign(&mut self, other: &i64)

Performs the <<= operation. Read more
","ShlAssign<&i64>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i8> for usize

source§

fn shl_assign(&mut self, other: &i8)

Performs the <<= operation. Read more
","ShlAssign<&i8>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&isize> for usize

source§

fn shl_assign(&mut self, other: &isize)

Performs the <<= operation. Read more
","ShlAssign<&isize>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u128> for usize

source§

fn shl_assign(&mut self, other: &u128)

Performs the <<= operation. Read more
","ShlAssign<&u128>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u16> for usize

source§

fn shl_assign(&mut self, other: &u16)

Performs the <<= operation. Read more
","ShlAssign<&u16>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u32> for usize

source§

fn shl_assign(&mut self, other: &u32)

Performs the <<= operation. Read more
","ShlAssign<&u32>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u64> for usize

source§

fn shl_assign(&mut self, other: &u64)

Performs the <<= operation. Read more
","ShlAssign<&u64>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u8> for usize

source§

fn shl_assign(&mut self, other: &u8)

Performs the <<= operation. Read more
","ShlAssign<&u8>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&usize> for usize

source§

fn shl_assign(&mut self, other: &usize)

Performs the <<= operation. Read more
","ShlAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i128> for usize

source§

fn shl_assign(&mut self, other: i128)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i16> for usize

source§

fn shl_assign(&mut self, other: i16)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i32> for usize

source§

fn shl_assign(&mut self, other: i32)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i64> for usize

source§

fn shl_assign(&mut self, other: i64)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i8> for usize

source§

fn shl_assign(&mut self, other: i8)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<isize> for usize

source§

fn shl_assign(&mut self, other: isize)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u128> for usize

source§

fn shl_assign(&mut self, other: u128)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u16> for usize

source§

fn shl_assign(&mut self, other: u16)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u32> for usize

source§

fn shl_assign(&mut self, other: u32)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u64> for usize

source§

fn shl_assign(&mut self, other: u64)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u8> for usize

source§

fn shl_assign(&mut self, other: u8)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign for usize

source§

fn shl_assign(&mut self, other: usize)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i128> for usize

§

type Output = <usize as Shr<i128>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i128) -> <usize as Shr<i128>>::Output

Performs the >> operation. Read more
","Shr<&i128>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i16> for usize

§

type Output = <usize as Shr<i16>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i16) -> <usize as Shr<i16>>::Output

Performs the >> operation. Read more
","Shr<&i16>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i32> for usize

§

type Output = <usize as Shr<i32>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i32) -> <usize as Shr<i32>>::Output

Performs the >> operation. Read more
","Shr<&i32>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i64> for usize

§

type Output = <usize as Shr<i64>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i64) -> <usize as Shr<i64>>::Output

Performs the >> operation. Read more
","Shr<&i64>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i8> for usize

§

type Output = <usize as Shr<i8>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i8) -> <usize as Shr<i8>>::Output

Performs the >> operation. Read more
","Shr<&i8>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&isize> for usize

§

type Output = <usize as Shr<isize>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &isize) -> <usize as Shr<isize>>::Output

Performs the >> operation. Read more
","Shr<&isize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u128> for usize

§

type Output = <usize as Shr<u128>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u128) -> <usize as Shr<u128>>::Output

Performs the >> operation. Read more
","Shr<&u128>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u16> for usize

§

type Output = <usize as Shr<u16>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u16) -> <usize as Shr<u16>>::Output

Performs the >> operation. Read more
","Shr<&u16>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u32> for usize

§

type Output = <usize as Shr<u32>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u32) -> <usize as Shr<u32>>::Output

Performs the >> operation. Read more
","Shr<&u32>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u64> for usize

§

type Output = <usize as Shr<u64>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u64) -> <usize as Shr<u64>>::Output

Performs the >> operation. Read more
","Shr<&u64>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u8> for usize

§

type Output = <usize as Shr<u8>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u8) -> <usize as Shr<u8>>::Output

Performs the >> operation. Read more
","Shr<&u8>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&usize> for usize

§

type Output = <usize as Shr>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &usize) -> <usize as Shr>::Output

Performs the >> operation. Read more
","Shr<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i128> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i128) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i16> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i16) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i32> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i32) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i64> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i64) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i8> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i8) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<isize> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: isize) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u128> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u128) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u16> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u16) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u32> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u32) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u64> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u64) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u8> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u8) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: usize) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i128> for usize

source§

fn shr_assign(&mut self, other: &i128)

Performs the >>= operation. Read more
","ShrAssign<&i128>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i16> for usize

source§

fn shr_assign(&mut self, other: &i16)

Performs the >>= operation. Read more
","ShrAssign<&i16>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i32> for usize

source§

fn shr_assign(&mut self, other: &i32)

Performs the >>= operation. Read more
","ShrAssign<&i32>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i64> for usize

source§

fn shr_assign(&mut self, other: &i64)

Performs the >>= operation. Read more
","ShrAssign<&i64>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i8> for usize

source§

fn shr_assign(&mut self, other: &i8)

Performs the >>= operation. Read more
","ShrAssign<&i8>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&isize> for usize

source§

fn shr_assign(&mut self, other: &isize)

Performs the >>= operation. Read more
","ShrAssign<&isize>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u128> for usize

source§

fn shr_assign(&mut self, other: &u128)

Performs the >>= operation. Read more
","ShrAssign<&u128>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u16> for usize

source§

fn shr_assign(&mut self, other: &u16)

Performs the >>= operation. Read more
","ShrAssign<&u16>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u32> for usize

source§

fn shr_assign(&mut self, other: &u32)

Performs the >>= operation. Read more
","ShrAssign<&u32>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u64> for usize

source§

fn shr_assign(&mut self, other: &u64)

Performs the >>= operation. Read more
","ShrAssign<&u64>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u8> for usize

source§

fn shr_assign(&mut self, other: &u8)

Performs the >>= operation. Read more
","ShrAssign<&u8>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&usize> for usize

source§

fn shr_assign(&mut self, other: &usize)

Performs the >>= operation. Read more
","ShrAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i128> for usize

source§

fn shr_assign(&mut self, other: i128)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i16> for usize

source§

fn shr_assign(&mut self, other: i16)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i32> for usize

source§

fn shr_assign(&mut self, other: i32)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i64> for usize

source§

fn shr_assign(&mut self, other: i64)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i8> for usize

source§

fn shr_assign(&mut self, other: i8)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<isize> for usize

source§

fn shr_assign(&mut self, other: isize)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u128> for usize

source§

fn shr_assign(&mut self, other: u128)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u16> for usize

source§

fn shr_assign(&mut self, other: u16)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u32> for usize

source§

fn shr_assign(&mut self, other: u32)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u64> for usize

source§

fn shr_assign(&mut self, other: u64)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u8> for usize

source§

fn shr_assign(&mut self, other: u8)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign for usize

source§

fn shr_assign(&mut self, other: usize)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
source§

impl SimdElement for usize

§

type Mask = isize

🔬This is a nightly-only experimental API. (portable_simd)
The mask element type corresponding to this element type.
","SimdElement","tor_interface::tor_provider::CircuitToken"],["
1.15.0 (const: unstable) · source§

impl<T> SliceIndex<[T]> for usize

The methods index and index_mut panic if the index is out of bounds.

\n
§

type Output = T

The output type returned by methods.
source§

fn get(self, slice: &[T]) -> Option<&T>

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a shared reference to the output at this location, if in\nbounds.
source§

fn get_mut(self, slice: &mut [T]) -> Option<&mut T>

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable reference to the output at this location, if in\nbounds.
source§

unsafe fn get_unchecked(self, slice: *const [T]) -> *const T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a pointer to the output at this location, without\nperforming any bounds checking.\nCalling this method with an out-of-bounds index or a dangling slice pointer\nis undefined behavior even if the resulting pointer is not used.
source§

unsafe fn get_unchecked_mut(self, slice: *mut [T]) -> *mut T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable pointer to the output at this location, without\nperforming any bounds checking.\nCalling this method with an out-of-bounds index or a dangling slice pointer\nis undefined behavior even if the resulting pointer is not used.
source§

fn index(self, slice: &[T]) -> &T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a shared reference to the output at this location, panicking\nif out of bounds.
source§

fn index_mut(self, slice: &mut [T]) -> &mut T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable reference to the output at this location, panicking\nif out of bounds.
","SliceIndex<[T]>","tor_interface::tor_provider::CircuitToken"],["
§

impl SmartDisplay for usize

§

type Metadata = ()

User-provided metadata type.
§

fn metadata(&self, f: FormatterOptions) -> Metadata<'_, usize>

Compute any information needed to format the value. This must, at a minimum, determine the\nwidth of the value before any padding is added by the formatter. Read more
§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Format the value using the given formatter. This is the same as Display::fmt. Read more
§

fn fmt_with_metadata(\n &self,\n f: &mut Formatter<'_>,\n _metadata: Metadata<'_, Self>,\n) -> Result<(), Error>

Format the value using the given formatter and metadata. The formatted output should have\nthe width indicated by the metadata. This is before any padding is added by the\nformatter. Read more
","SmartDisplay","tor_interface::tor_provider::CircuitToken"],["
source§

impl Step for usize

source§

fn forward(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

fn backward(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
source§

unsafe fn forward_unchecked(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

unsafe fn backward_unchecked(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
source§

fn steps_between(start: &usize, end: &usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the number of successor steps required to get from start to end. Read more
source§

fn forward_checked(start: usize, n: usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

fn backward_checked(start: usize, n: usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
","Step","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Sub<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the - operator.
source§

fn sub(self, other: &BigInt) -> BigInt

Performs the - operation. Read more
","Sub<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Sub<&BigInt> for usize

§

type Output = BigInt

The resulting type after applying the - operator.
source§

fn sub(self, other: &BigInt) -> BigInt

Performs the - operation. Read more
","Sub<&BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Sub<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the - operator.
source§

fn sub(self, other: &BigUint) -> BigUint

Performs the - operation. Read more
","Sub<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Sub<&BigUint> for usize

§

type Output = BigUint

The resulting type after applying the - operator.
source§

fn sub(self, other: &BigUint) -> BigUint

Performs the - operation. Read more
","Sub<&BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Sub<&usize> for usize

§

type Output = <usize as Sub>::Output

The resulting type after applying the - operator.
source§

fn sub(self, other: &usize) -> <usize as Sub>::Output

Performs the - operation. Read more
","Sub<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Sub<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the - operator.
source§

fn sub(self, other: BigInt) -> BigInt

Performs the - operation. Read more
","Sub","tor_interface::tor_provider::CircuitToken"],["
source§

impl Sub<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the - operator.
source§

fn sub(self, other: BigInt) -> BigInt

Performs the - operation. Read more
","Sub","tor_interface::tor_provider::CircuitToken"],["
source§

impl Sub<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the - operator.
source§

fn sub(self, other: BigUint) -> BigUint

Performs the - operation. Read more
","Sub","tor_interface::tor_provider::CircuitToken"],["
source§

impl Sub<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the - operator.
source§

fn sub(self, other: BigUint) -> BigUint

Performs the - operation. Read more
","Sub","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Sub for usize

§

type Output = usize

The resulting type after applying the - operator.
source§

fn sub(self, other: usize) -> usize

Performs the - operation. Read more
","Sub","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl SubAssign<&usize> for usize

source§

fn sub_assign(&mut self, other: &usize)

Performs the -= operation. Read more
","SubAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl SubAssign for usize

source§

fn sub_assign(&mut self, other: usize)

Performs the -= operation. Read more
","SubAssign","tor_interface::tor_provider::CircuitToken"],["
1.12.0 · source§

impl<'a> Sum<&'a usize> for usize

source§

fn sum<I>(iter: I) -> usize
where\n I: Iterator<Item = &'a usize>,

Method which takes an iterator and generates Self from the elements by\n“summing up” the items.
","Sum<&'a usize>","tor_interface::tor_provider::CircuitToken"],["
1.12.0 · source§

impl Sum for usize

source§

fn sum<I>(iter: I) -> usize
where\n I: Iterator<Item = usize>,

Method which takes an iterator and generates Self from the elements by\n“summing up” the items.
","Sum","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToBigInt for usize

source§

fn to_bigint(&self) -> Option<BigInt>

Converts the value of self to a BigInt.
","ToBigInt","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToBigInt for usize

source§

fn to_bigint(&self) -> Option<BigInt>

Converts the value of self to a BigInt.
","ToBigInt","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToBigUint for usize

source§

fn to_biguint(&self) -> Option<BigUint>

Converts the value of self to a BigUint.
","ToBigUint","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToBigUint for usize

source§

fn to_biguint(&self) -> Option<BigUint>

Converts the value of self to a BigUint.
","ToBigUint","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToBytes for usize

§

type Bytes = [u8; 8]

source§

fn to_be_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in big-endian byte order. Read more
source§

fn to_le_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in little-endian byte order. Read more
source§

fn to_ne_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in native byte order. Read more
","ToBytes","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToPrimitive for usize

source§

fn to_isize(&self) -> Option<isize>

Converts the value of self to an isize. If the value cannot be\nrepresented by an isize, then None is returned.
source§

fn to_i8(&self) -> Option<i8>

Converts the value of self to an i8. If the value cannot be\nrepresented by an i8, then None is returned.
source§

fn to_i16(&self) -> Option<i16>

Converts the value of self to an i16. If the value cannot be\nrepresented by an i16, then None is returned.
source§

fn to_i32(&self) -> Option<i32>

Converts the value of self to an i32. If the value cannot be\nrepresented by an i32, then None is returned.
source§

fn to_i64(&self) -> Option<i64>

Converts the value of self to an i64. If the value cannot be\nrepresented by an i64, then None is returned.
source§

fn to_i128(&self) -> Option<i128>

Converts the value of self to an i128. If the value cannot be\nrepresented by an i128 (i64 under the default implementation), then\nNone is returned. Read more
source§

fn to_usize(&self) -> Option<usize>

Converts the value of self to a usize. If the value cannot be\nrepresented by a usize, then None is returned.
source§

fn to_u8(&self) -> Option<u8>

Converts the value of self to a u8. If the value cannot be\nrepresented by a u8, then None is returned.
source§

fn to_u16(&self) -> Option<u16>

Converts the value of self to a u16. If the value cannot be\nrepresented by a u16, then None is returned.
source§

fn to_u32(&self) -> Option<u32>

Converts the value of self to a u32. If the value cannot be\nrepresented by a u32, then None is returned.
source§

fn to_u64(&self) -> Option<u64>

Converts the value of self to a u64. If the value cannot be\nrepresented by a u64, then None is returned.
source§

fn to_u128(&self) -> Option<u128>

Converts the value of self to a u128. If the value cannot be\nrepresented by a u128 (u64 under the default implementation), then\nNone is returned. Read more
source§

fn to_f32(&self) -> Option<f32>

Converts the value of self to an f32. Overflows may map to positive\nor negative inifinity, otherwise None is returned if the value cannot\nbe represented by an f32.
source§

fn to_f64(&self) -> Option<f64>

Converts the value of self to an f64. Overflows may map to positive\nor negative inifinity, otherwise None is returned if the value cannot\nbe represented by an f64. Read more
","ToPrimitive","tor_interface::tor_provider::CircuitToken"],["
§

impl ToSql for usize

§

fn to_sql(&self) -> Result<ToSqlOutput<'_>, Error>

Converts Rust value to SQLite value
","ToSql","tor_interface::tor_provider::CircuitToken"],["
§

impl ToUsize for usize

§

fn to_usize(&self) -> usize

converts self to usize
","ToUsize","tor_interface::tor_provider::CircuitToken"],["
source§

impl TryFrom<&BigInt> for usize

§

type Error = TryFromBigIntError<()>

The type returned in the event of a conversion error.
source§

fn try_from(value: &BigInt) -> Result<usize, TryFromBigIntError<()>>

Performs the conversion.
","TryFrom<&BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl TryFrom<&BigUint> for usize

§

type Error = TryFromBigIntError<()>

The type returned in the event of a conversion error.
source§

fn try_from(value: &BigUint) -> Result<usize, TryFromBigIntError<()>>

Performs the conversion.
","TryFrom<&BigUint>","tor_interface::tor_provider::CircuitToken"],["
source§

impl TryFrom<BigInt> for usize

§

type Error = TryFromBigIntError<BigInt>

The type returned in the event of a conversion error.
source§

fn try_from(value: BigInt) -> Result<usize, TryFromBigIntError<BigInt>>

Performs the conversion.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
source§

impl TryFrom<BigUint> for usize

§

type Error = TryFromBigIntError<BigUint>

The type returned in the event of a conversion error.
source§

fn try_from(value: BigUint) -> Result<usize, TryFromBigIntError<BigUint>>

Performs the conversion.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
§

impl<const L: i32, const H: i32> TryFrom<BoundedInt32<L, H>> for usize

§

type Error = Error

The type returned in the event of a conversion error.
§

fn try_from(\n val: BoundedInt32<L, H>,\n) -> Result<usize, <usize as TryFrom<BoundedInt32<L, H>>>::Error>

Performs the conversion.
","TryFrom>","tor_interface::tor_provider::CircuitToken"],["
§

impl TryFrom<Length> for usize

§

type Error = Error

The type returned in the event of a conversion error.
§

fn try_from(len: Length) -> Result<usize, Error>

Performs the conversion.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i128> for usize

source§

fn try_from(u: i128) -> Result<usize, <usize as TryFrom<i128>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i16> for usize

source§

fn try_from(u: i16) -> Result<usize, <usize as TryFrom<i16>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i32> for usize

source§

fn try_from(u: i32) -> Result<usize, <usize as TryFrom<i32>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i64> for usize

source§

fn try_from(u: i64) -> Result<usize, <usize as TryFrom<i64>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i8> for usize

source§

fn try_from(u: i8) -> Result<usize, <usize as TryFrom<i8>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<isize> for usize

source§

fn try_from(u: isize) -> Result<usize, <usize as TryFrom<isize>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<u128> for usize

source§

fn try_from(u: u128) -> Result<usize, <usize as TryFrom<u128>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<u32> for usize

source§

fn try_from(value: u32) -> Result<usize, <usize as TryFrom<u32>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<u64> for usize

source§

fn try_from(value: u64) -> Result<usize, <usize as TryFrom<u64>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
§

impl Unsigned for usize

§

fn is_power_of_two(self) -> bool

Returns true if and only if self == 2^k for some k.
§

fn next_power_of_two(self) -> usize

Returns the smallest power of two greater than or equal to self. Read more
§

fn checked_next_power_of_two(self) -> Option<usize>

Returns the smallest power of two greater than or equal to n. If the\nnext power of two is greater than the type’s maximum value, None is\nreturned, otherwise the power of two is wrapped in Some.
","Unsigned","tor_interface::tor_provider::CircuitToken"],["
1.42.0 · source§

impl UpperExp for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","UpperExp","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl UpperHex for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","UpperHex","tor_interface::tor_provider::CircuitToken"],["
§

impl Value for usize

§

fn record(&self, key: &Field, visitor: &mut dyn Visit)

Visits this value with the given Visitor.
","Value","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingAdd for usize

source§

fn wrapping_add(&self, v: &usize) -> usize

Wrapping (modular) addition. Computes self + other, wrapping around at the boundary of\nthe type.
","WrappingAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingMul for usize

source§

fn wrapping_mul(&self, v: &usize) -> usize

Wrapping (modular) multiplication. Computes self * other, wrapping around at the boundary\nof the type.
","WrappingMul","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingNeg for usize

source§

fn wrapping_neg(&self) -> usize

Wrapping (modular) negation. Computes -self,\nwrapping around at the boundary of the type. Read more
","WrappingNeg","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingShl for usize

source§

fn wrapping_shl(&self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs),\nwhere mask removes any high order bits of rhs that would\ncause the shift to exceed the bitwidth of the type. Read more
","WrappingShl","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingShr for usize

source§

fn wrapping_shr(&self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs),\nwhere mask removes any high order bits of rhs that would\ncause the shift to exceed the bitwidth of the type. Read more
","WrappingShr","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingSub for usize

source§

fn wrapping_sub(&self, v: &usize) -> usize

Wrapping (modular) subtraction. Computes self - other, wrapping around at the boundary\nof the type.
","WrappingSub","tor_interface::tor_provider::CircuitToken"],["
§

impl WriteHex for usize

§

fn write_hex<W>(&self, writer: W) -> Result<(), Error>
where\n W: Write,

Write the value as hex.
","WriteHex","tor_interface::tor_provider::CircuitToken"],["
§

impl Writeable for usize

§

fn write_to<W>(&self, sink: &mut W) -> Result<(), Error>
where\n W: Write + ?Sized,

Writes a string to the given sink. Errors from the sink are bubbled up.\nThe default implementation delegates to write_to_parts, and discards any\nPart annotations.
§

fn writeable_length_hint(&self) -> LengthHint

Returns a hint for the number of UTF-8 bytes that will be written to the sink. Read more
§

fn write_to_parts<S>(&self, sink: &mut S) -> Result<(), Error>
where\n S: PartsWrite + ?Sized,

Write bytes and Part annotations to the given sink. Errors from the\nsink are bubbled up. The default implementation delegates to write_to,\nand doesn’t produce any Part annotations.
§

fn write_to_string(&self) -> Cow<'_, str>

Creates a new String with the data from this Writeable. Like ToString,\nbut smaller and faster. Read more
§

fn writeable_cmp_bytes(&self, other: &[u8]) -> Ordering

Compares the contents of this Writeable to the given bytes\nwithout allocating a String to hold the Writeable contents. Read more
","Writeable","tor_interface::tor_provider::CircuitToken"],["
§

impl<'a> Yokeable<'a> for usize

§

type Output = usize

This type MUST be Self with the 'static replaced with 'a, i.e. Self<'a>
§

fn transform(&self) -> &<usize as Yokeable<'a>>::Output

This method must cast self between &'a Self<'static> and &'a Self<'a>. Read more
§

fn transform_owned(self) -> <usize as Yokeable<'a>>::Output

This method must cast self between Self<'static> and Self<'a>. Read more
§

unsafe fn make(this: <usize as Yokeable<'a>>::Output) -> usize

This method can be used to cast away Self<'a>’s lifetime. Read more
§

fn transform_mut<F>(&'a mut self, f: F)
where\n F: 'static + for<'b> FnOnce(&'b mut <usize as Yokeable<'a>>::Output),

This method must cast self between &'a mut Self<'static> and &'a mut Self<'a>,\nand pass it to f. Read more
","Yokeable<'a>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Zero for usize

source§

fn zero() -> usize

Returns the additive identity element of Self, 0. Read more
source§

fn is_zero(&self) -> bool

Returns true if self is equal to the additive identity.
source§

fn set_zero(&mut self)

Sets self to the additive identity element of Self, 0.
","Zero","tor_interface::tor_provider::CircuitToken"],["
§

impl<'a> ZeroFrom<'a, usize> for usize

§

fn zero_from(this: &'a usize) -> usize

Clone the other C into a struct that may retain references into C.
","ZeroFrom<'a, usize>","tor_interface::tor_provider::CircuitToken"],["
§

impl<'a> ZeroMapKV<'a> for usize

§

type Container = FlexZeroVec<'a>

The container that can be used with this type: [ZeroVec] or [VarZeroVec].
§

type Slice = FlexZeroSlice

§

type GetType = [u8]

The type produced by Container::get() Read more
§

type OwnedType = usize

The type produced by Container::replace() and Container::remove(),\nalso used during deserialization. If Self is human readable serialized,\ndeserializing to Self::OwnedType should produce the same value once\npassed through Self::owned_as_self() Read more
","ZeroMapKV<'a>","tor_interface::tor_provider::CircuitToken"],["
source§

impl usize

1.43.0 · source

pub const MIN: usize = 0usize

The smallest value that can be represented by this integer type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MIN, 0);
\n
1.43.0 · source

pub const MAX: usize = 18_446_744_073_709_551_615usize

The largest value that can be represented by this integer type\n(264 − 1 on 64-bit targets).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MAX, 18446744073709551615);
\n
1.53.0 · source

pub const BITS: u32 = 64u32

The size of this integer type in bits.

\n
§Examples
\n
assert_eq!(usize::BITS, 64);
\n
1.0.0 (const: 1.32.0) · source

pub const fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b01001100usize;\n\nassert_eq!(n.count_ones(), 3);
\n
1.0.0 (const: 1.32.0) · source

pub const fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MAX.count_zeros(), 0);
\n
1.0.0 (const: 1.32.0) · source

pub const fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of self.

\n

Depending on what you’re doing with the value, you might also be interested in the\nilog2 function which returns a consistent number, even if the type widens.

\n
§Examples
\n

Basic usage:

\n\n
let n = usize::MAX >> 2;\n\nassert_eq!(n.leading_zeros(), 2);
\n
1.0.0 (const: 1.32.0) · source

pub const fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation\nof self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b0101000usize;\n\nassert_eq!(n.trailing_zeros(), 3);
\n
1.46.0 (const: 1.46.0) · source

pub const fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
let n = !(usize::MAX >> 2);\n\nassert_eq!(n.leading_ones(), 2);
\n
1.46.0 (const: 1.46.0) · source

pub const fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation\nof self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b1010111usize;\n\nassert_eq!(n.trailing_ones(), 3);
\n
source

pub const fn cast_signed(self) -> isize

🔬This is a nightly-only experimental API. (integer_sign_cast)

Returns the bit pattern of self reinterpreted as a signed integer of the same size.

\n

This produces the same result as an as cast, but ensures that the bit-width remains\nthe same.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(integer_sign_cast)]\n\nlet n = usize::MAX;\n\nassert_eq!(n.cast_signed(), -1isize);
\n
1.0.0 (const: 1.32.0) · source

pub const fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n,\nwrapping the truncated bits to the end of the resulting integer.

\n

Please note this isn’t the same operation as the << shifting operator!

\n
§Examples
\n

Basic usage:

\n\n
let n = 0xaa00000000006e1usize;\nlet m = 0x6e10aa;\n\nassert_eq!(n.rotate_left(12), m);
\n
1.0.0 (const: 1.32.0) · source

pub const fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n,\nwrapping the truncated bits to the beginning of the resulting\ninteger.

\n

Please note this isn’t the same operation as the >> shifting operator!

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x6e10aausize;\nlet m = 0xaa00000000006e1;\n\nassert_eq!(n.rotate_right(12), m);
\n
1.0.0 (const: 1.32.0) · source

pub const fn swap_bytes(self) -> usize

Reverses the byte order of the integer.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1234567890123456usize;\nlet m = n.swap_bytes();\n\nassert_eq!(m, 0x5634129078563412);
\n
1.37.0 (const: 1.37.0) · source

pub const fn reverse_bits(self) -> usize

Reverses the order of bits in the integer. The least significant bit becomes the most significant bit,\nsecond least-significant bit becomes second most-significant bit, etc.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1234567890123456usize;\nlet m = n.reverse_bits();\n\nassert_eq!(m, 0x6a2c48091e6a2c48);\nassert_eq!(0, 0usize.reverse_bits());
\n
1.0.0 (const: 1.32.0) · source

pub const fn from_be(x: usize) -> usize

Converts an integer from big endian to the target’s endianness.

\n

On big endian this is a no-op. On little endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"big\") {\n    assert_eq!(usize::from_be(n), n)\n} else {\n    assert_eq!(usize::from_be(n), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn from_le(x: usize) -> usize

Converts an integer from little endian to the target’s endianness.

\n

On little endian this is a no-op. On big endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"little\") {\n    assert_eq!(usize::from_le(n), n)\n} else {\n    assert_eq!(usize::from_le(n), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn to_be(self) -> usize

Converts self to big endian from the target’s endianness.

\n

On big endian this is a no-op. On little endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"big\") {\n    assert_eq!(n.to_be(), n)\n} else {\n    assert_eq!(n.to_be(), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn to_le(self) -> usize

Converts self to little endian from the target’s endianness.

\n

On little endian this is a no-op. On big endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"little\") {\n    assert_eq!(n.to_le(), n)\n} else {\n    assert_eq!(n.to_le(), n.swap_bytes())\n}
\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_add(self, rhs: usize) -> Option<usize>

Checked integer addition. Computes self + rhs, returning None\nif overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!((usize::MAX - 2).checked_add(1), Some(usize::MAX - 1));\nassert_eq!((usize::MAX - 2).checked_add(3), None);
\n
source

pub const fn strict_add(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer addition. Computes self + rhs, panicking\nif overflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!((usize::MAX - 2).strict_add(1), usize::MAX - 1);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (usize::MAX - 2).strict_add(3);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_add(self, rhs: usize) -> usize

Unchecked integer addition. Computes self + rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_add(y) is semantically equivalent to calling\nx.checked_add(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_add.

\n
§Safety
\n

This results in undefined behavior when\nself + rhs > usize::MAX or self + rhs < usize::MIN,\ni.e. when checked_add would return None.

\n
1.66.0 (const: 1.66.0) · source

pub const fn checked_add_signed(self, rhs: isize) -> Option<usize>

Checked addition with a signed integer. Computes self + rhs,\nreturning None if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.checked_add_signed(2), Some(3));\nassert_eq!(1usize.checked_add_signed(-2), None);\nassert_eq!((usize::MAX - 2).checked_add_signed(3), None);
\n
source

pub const fn strict_add_signed(self, rhs: isize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict addition with a signed integer. Computes self + rhs,\npanicking if overflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(1usize.strict_add_signed(2), 3);
\n

The following panic because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 1usize.strict_add_signed(-2);
\n\n
#![feature(strict_overflow_ops)]\nlet _ = (usize::MAX - 2).strict_add_signed(3);
\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_sub(self, rhs: usize) -> Option<usize>

Checked integer subtraction. Computes self - rhs, returning\nNone if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.checked_sub(1), Some(0));\nassert_eq!(0usize.checked_sub(1), None);
\n
source

pub const fn strict_sub(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer subtraction. Computes self - rhs, panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(1usize.strict_sub(1), 0);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0usize.strict_sub(1);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_sub(self, rhs: usize) -> usize

Unchecked integer subtraction. Computes self - rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_sub(y) is semantically equivalent to calling\nx.checked_sub(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_sub.

\n

If you find yourself writing code like this:

\n\n
if foo >= bar {\n    // SAFETY: just checked it will not overflow\n    let diff = unsafe { foo.unchecked_sub(bar) };\n    // ... use diff ...\n}
\n

Consider changing it to

\n\n
if let Some(diff) = foo.checked_sub(bar) {\n    // ... use diff ...\n}
\n

As that does exactly the same thing – including telling the optimizer\nthat the subtraction cannot overflow – but avoids needing unsafe.

\n
§Safety
\n

This results in undefined behavior when\nself - rhs > usize::MAX or self - rhs < usize::MIN,\ni.e. when checked_sub would return None.

\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_mul(self, rhs: usize) -> Option<usize>

Checked integer multiplication. Computes self * rhs, returning\nNone if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_mul(1), Some(5));\nassert_eq!(usize::MAX.checked_mul(2), None);
\n
source

pub const fn strict_mul(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer multiplication. Computes self * rhs, panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(5usize.strict_mul(1), 5);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = usize::MAX.strict_mul(2);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_mul(self, rhs: usize) -> usize

Unchecked integer multiplication. Computes self * rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_mul(y) is semantically equivalent to calling\nx.checked_mul(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_mul.

\n
§Safety
\n

This results in undefined behavior when\nself * rhs > usize::MAX or self * rhs < usize::MIN,\ni.e. when checked_mul would return None.

\n
1.0.0 (const: 1.52.0) · source

pub const fn checked_div(self, rhs: usize) -> Option<usize>

Checked integer division. Computes self / rhs, returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.checked_div(2), Some(64));\nassert_eq!(1usize.checked_div(0), None);
\n
source

pub const fn strict_div(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer division. Computes self / rhs.\nStrict division on unsigned types is just normal division.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_div(10), 10);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (1usize).strict_div(0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn checked_div_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean division. Computes self.div_euclid(rhs), returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.checked_div_euclid(2), Some(64));\nassert_eq!(1usize.checked_div_euclid(0), None);
\n
source

pub const fn strict_div_euclid(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict Euclidean division. Computes self.div_euclid(rhs).\nStrict division on unsigned types is just normal division.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.strict_div(rhs).

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_div_euclid(10), 10);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (1usize).strict_div_euclid(0);
\n
1.7.0 (const: 1.52.0) · source

pub const fn checked_rem(self, rhs: usize) -> Option<usize>

Checked integer remainder. Computes self % rhs, returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_rem(2), Some(1));\nassert_eq!(5usize.checked_rem(0), None);
\n
source

pub const fn strict_rem(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer remainder. Computes self % rhs.\nStrict remainder calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_rem(10), 0);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 5usize.strict_rem(0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn checked_rem_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean modulo. Computes self.rem_euclid(rhs), returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_rem_euclid(2), Some(1));\nassert_eq!(5usize.checked_rem_euclid(0), None);
\n
source

pub const fn strict_rem_euclid(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict Euclidean modulo. Computes self.rem_euclid(rhs).\nStrict modulo calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.strict_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_rem_euclid(10), 0);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 5usize.strict_rem_euclid(0);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog(self, base: usize) -> u32

Returns the logarithm of the number with respect to an arbitrary base,\nrounded down.

\n

This method might not be optimized owing to implementation details;\nilog2 can produce results more efficiently for base 2, and ilog10\ncan produce results more efficiently for base 10.

\n
§Panics
\n

This function will panic if self is zero, or if base is less than 2.

\n
§Examples
\n
assert_eq!(5usize.ilog(5), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog2(self) -> u32

Returns the base 2 logarithm of the number, rounded down.

\n
§Panics
\n

This function will panic if self is zero.

\n
§Examples
\n
assert_eq!(2usize.ilog2(), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog10(self) -> u32

Returns the base 10 logarithm of the number, rounded down.

\n
§Panics
\n

This function will panic if self is zero.

\n
§Example
\n
assert_eq!(10usize.ilog10(), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog(self, base: usize) -> Option<u32>

Returns the logarithm of the number with respect to an arbitrary base,\nrounded down.

\n

Returns None if the number is zero, or if the base is not at least 2.

\n

This method might not be optimized owing to implementation details;\nchecked_ilog2 can produce results more efficiently for base 2, and\nchecked_ilog10 can produce results more efficiently for base 10.

\n
§Examples
\n
assert_eq!(5usize.checked_ilog(5), Some(1));
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog2(self) -> Option<u32>

Returns the base 2 logarithm of the number, rounded down.

\n

Returns None if the number is zero.

\n
§Examples
\n
assert_eq!(2usize.checked_ilog2(), Some(1));
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog10(self) -> Option<u32>

Returns the base 10 logarithm of the number, rounded down.

\n

Returns None if the number is zero.

\n
§Examples
\n
assert_eq!(10usize.checked_ilog10(), Some(1));
\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_neg(self) -> Option<usize>

Checked negation. Computes -self, returning None unless self == 0.

\n

Note that negating any positive integer will overflow.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0usize.checked_neg(), Some(0));\nassert_eq!(1usize.checked_neg(), None);
\n
source

pub const fn strict_neg(self) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict negation. Computes -self, panicking unless self == 0.

\n

Note that negating any positive integer will overflow.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0usize.strict_neg(), 0);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 1usize.strict_neg();
\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_shl(self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None\nif rhs is larger than or equal to the number of bits in self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0x1usize.checked_shl(4), Some(0x10));\nassert_eq!(0x10usize.checked_shl(129), None);
\n
source

pub const fn strict_shl(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict shift left. Computes self << rhs, panicking if rhs is larger\nthan or equal to the number of bits in self.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0x1usize.strict_shl(4), 0x10);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0x10usize.strict_shl(129);
\n
source

pub const unsafe fn unchecked_shl(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (unchecked_shifts)

Unchecked shift left. Computes self << rhs, assuming that\nrhs is less than the number of bits in self.

\n
§Safety
\n

This results in undefined behavior if rhs is larger than\nor equal to the number of bits in self,\ni.e. when checked_shl would return None.

\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_shr(self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None\nif rhs is larger than or equal to the number of bits in self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0x10usize.checked_shr(4), Some(0x1));\nassert_eq!(0x10usize.checked_shr(129), None);
\n
source

pub const fn strict_shr(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict shift right. Computes self >> rhs, panicking rhs is\nlarger than or equal to the number of bits in self.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0x10usize.strict_shr(4), 0x1);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0x10usize.strict_shr(129);
\n
source

pub const unsafe fn unchecked_shr(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (unchecked_shifts)

Unchecked shift right. Computes self >> rhs, assuming that\nrhs is less than the number of bits in self.

\n
§Safety
\n

This results in undefined behavior if rhs is larger than\nor equal to the number of bits in self,\ni.e. when checked_shr would return None.

\n
1.34.0 (const: 1.50.0) · source

pub const fn checked_pow(self, exp: u32) -> Option<usize>

Checked exponentiation. Computes self.pow(exp), returning None if\noverflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.checked_pow(5), Some(32));\nassert_eq!(usize::MAX.checked_pow(2), None);
\n
source

pub const fn strict_pow(self, exp: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict exponentiation. Computes self.pow(exp), panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(2usize.strict_pow(5), 32);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = usize::MAX.strict_pow(2);
\n
1.0.0 (const: 1.47.0) · source

pub const fn saturating_add(self, rhs: usize) -> usize

Saturating integer addition. Computes self + rhs, saturating at\nthe numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.saturating_add(1), 101);\nassert_eq!(usize::MAX.saturating_add(127), usize::MAX);
\n
1.66.0 (const: 1.66.0) · source

pub const fn saturating_add_signed(self, rhs: isize) -> usize

Saturating addition with a signed integer. Computes self + rhs,\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.saturating_add_signed(2), 3);\nassert_eq!(1usize.saturating_add_signed(-2), 0);\nassert_eq!((usize::MAX - 2).saturating_add_signed(4), usize::MAX);
\n
1.0.0 (const: 1.47.0) · source

pub const fn saturating_sub(self, rhs: usize) -> usize

Saturating integer subtraction. Computes self - rhs, saturating\nat the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.saturating_sub(27), 73);\nassert_eq!(13usize.saturating_sub(127), 0);
\n
1.7.0 (const: 1.47.0) · source

pub const fn saturating_mul(self, rhs: usize) -> usize

Saturating integer multiplication. Computes self * rhs,\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.saturating_mul(10), 20);\nassert_eq!((usize::MAX).saturating_mul(10), usize::MAX);
\n
1.58.0 (const: 1.58.0) · source

pub const fn saturating_div(self, rhs: usize) -> usize

Saturating integer division. Computes self / rhs, saturating at the\nnumeric bounds instead of overflowing.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.saturating_div(2), 2);\n
\n
1.34.0 (const: 1.50.0) · source

pub const fn saturating_pow(self, exp: u32) -> usize

Saturating integer exponentiation. Computes self.pow(exp),\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(4usize.saturating_pow(3), 64);\nassert_eq!(usize::MAX.saturating_pow(2), usize::MAX);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_add(self, rhs: usize) -> usize

Wrapping (modular) addition. Computes self + rhs,\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(200usize.wrapping_add(55), 255);\nassert_eq!(200usize.wrapping_add(usize::MAX), 199);
\n
1.66.0 (const: 1.66.0) · source

pub const fn wrapping_add_signed(self, rhs: isize) -> usize

Wrapping (modular) addition with a signed integer. Computes\nself + rhs, wrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.wrapping_add_signed(2), 3);\nassert_eq!(1usize.wrapping_add_signed(-2), usize::MAX);\nassert_eq!((usize::MAX - 2).wrapping_add_signed(4), 1);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_sub(self, rhs: usize) -> usize

Wrapping (modular) subtraction. Computes self - rhs,\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_sub(100), 0);\nassert_eq!(100usize.wrapping_sub(usize::MAX), 101);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_mul(self, rhs: usize) -> usize

Wrapping (modular) multiplication. Computes self * rhs, wrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u8 is used here.

\n\n
assert_eq!(10u8.wrapping_mul(12), 120);\nassert_eq!(25u8.wrapping_mul(12), 44);
\n
1.2.0 (const: 1.52.0) · source

pub const fn wrapping_div(self, rhs: usize) -> usize

Wrapping (modular) division. Computes self / rhs.\nWrapped division on unsigned types is just normal division.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_div(10), 10);
\n
1.38.0 (const: 1.52.0) · source

pub const fn wrapping_div_euclid(self, rhs: usize) -> usize

Wrapping Euclidean division. Computes self.div_euclid(rhs).\nWrapped division on unsigned types is just normal division.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.wrapping_div(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_div_euclid(10), 10);
\n
1.2.0 (const: 1.52.0) · source

pub const fn wrapping_rem(self, rhs: usize) -> usize

Wrapping (modular) remainder. Computes self % rhs.\nWrapped remainder calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_rem(10), 0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn wrapping_rem_euclid(self, rhs: usize) -> usize

Wrapping Euclidean modulo. Computes self.rem_euclid(rhs).\nWrapped modulo calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.wrapping_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_rem_euclid(10), 0);
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_neg(self) -> usize

Wrapping (modular) negation. Computes -self,\nwrapping around at the boundary of the type.

\n

Since unsigned types do not have negative equivalents\nall applications of this function will wrap (except for -0).\nFor values smaller than the corresponding signed type’s maximum\nthe result is the same as casting the corresponding signed value.\nAny larger values are equivalent to MAX + 1 - (val - MAX - 1) where\nMAX is the corresponding signed type’s maximum.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0_usize.wrapping_neg(), 0);\nassert_eq!(usize::MAX.wrapping_neg(), 1);\nassert_eq!(13_usize.wrapping_neg(), (!13) + 1);\nassert_eq!(42_usize.wrapping_neg(), !(42 - 1));
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_shl(self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs),\nwhere mask removes any high-order bits of rhs that\nwould cause the shift to exceed the bitwidth of the type.

\n

Note that this is not the same as a rotate-left; the\nRHS of a wrapping shift-left is restricted to the range\nof the type, rather than the bits shifted out of the LHS\nbeing returned to the other end. The primitive integer\ntypes all implement a rotate_left function,\nwhich may be what you want instead.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.wrapping_shl(7), 128);\nassert_eq!(1usize.wrapping_shl(128), 1);
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_shr(self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs),\nwhere mask removes any high-order bits of rhs that\nwould cause the shift to exceed the bitwidth of the type.

\n

Note that this is not the same as a rotate-right; the\nRHS of a wrapping shift-right is restricted to the range\nof the type, rather than the bits shifted out of the LHS\nbeing returned to the other end. The primitive integer\ntypes all implement a rotate_right function,\nwhich may be what you want instead.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.wrapping_shr(7), 1);\nassert_eq!(128usize.wrapping_shr(128), 128);
\n
1.34.0 (const: 1.50.0) · source

pub const fn wrapping_pow(self, exp: u32) -> usize

Wrapping (modular) exponentiation. Computes self.pow(exp),\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(3usize.wrapping_pow(5), 243);\nassert_eq!(3u8.wrapping_pow(6), 217);
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_add(self, rhs: usize) -> (usize, bool)

Calculates self + rhs

\n

Returns a tuple of the addition along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_add(2), (7, false));\nassert_eq!(usize::MAX.overflowing_add(1), (0, true));
\n
source

pub const fn carrying_add(self, rhs: usize, carry: bool) -> (usize, bool)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates self + rhs + carry and returns a tuple containing\nthe sum and the output carry.

\n

Performs “ternary addition” of two integer operands and a carry-in\nbit, and returns an output integer and a carry-out bit. This allows\nchaining together multiple additions to create a wider addition, and\ncan be useful for bignum addition.

\n

This can be thought of as a 64-bit “full adder”, in the electronics sense.

\n

If the input carry is false, this method is equivalent to\noverflowing_add, and the output carry is\nequal to the overflow flag. Note that although carry and overflow\nflags are similar for unsigned integers, they are different for\nsigned integers.

\n
§Examples
\n
#![feature(bigint_helper_methods)]\n\n//    3  MAX    (a = 3 × 2^64 + 2^64 - 1)\n// +  5    7    (b = 5 × 2^64 + 7)\n// ---------\n//    9    6    (sum = 9 × 2^64 + 6)\n\nlet (a1, a0): (usize, usize) = (3, usize::MAX);\nlet (b1, b0): (usize, usize) = (5, 7);\nlet carry0 = false;\n\nlet (sum0, carry1) = a0.carrying_add(b0, carry0);\nassert_eq!(carry1, true);\nlet (sum1, carry2) = a1.carrying_add(b1, carry1);\nassert_eq!(carry2, false);\n\nassert_eq!((sum1, sum0), (9, 6));
\n
1.66.0 (const: 1.66.0) · source

pub const fn overflowing_add_signed(self, rhs: isize) -> (usize, bool)

Calculates self + rhs with a signed rhs

\n

Returns a tuple of the addition along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.overflowing_add_signed(2), (3, false));\nassert_eq!(1usize.overflowing_add_signed(-2), (usize::MAX, true));\nassert_eq!((usize::MAX - 2).overflowing_add_signed(4), (1, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_sub(self, rhs: usize) -> (usize, bool)

Calculates self - rhs

\n

Returns a tuple of the subtraction along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_sub(2), (3, false));\nassert_eq!(0usize.overflowing_sub(1), (usize::MAX, true));
\n
source

pub const fn borrowing_sub(self, rhs: usize, borrow: bool) -> (usize, bool)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates selfrhsborrow and returns a tuple\ncontaining the difference and the output borrow.

\n

Performs “ternary subtraction” by subtracting both an integer\noperand and a borrow-in bit from self, and returns an output\ninteger and a borrow-out bit. This allows chaining together multiple\nsubtractions to create a wider subtraction, and can be useful for\nbignum subtraction.

\n
§Examples
\n
#![feature(bigint_helper_methods)]\n\n//    9    6    (a = 9 × 2^64 + 6)\n// -  5    7    (b = 5 × 2^64 + 7)\n// ---------\n//    3  MAX    (diff = 3 × 2^64 + 2^64 - 1)\n\nlet (a1, a0): (usize, usize) = (9, 6);\nlet (b1, b0): (usize, usize) = (5, 7);\nlet borrow0 = false;\n\nlet (diff0, borrow1) = a0.borrowing_sub(b0, borrow0);\nassert_eq!(borrow1, true);\nlet (diff1, borrow2) = a1.borrowing_sub(b1, borrow1);\nassert_eq!(borrow2, false);\n\nassert_eq!((diff1, diff0), (3, usize::MAX));
\n
1.60.0 (const: 1.60.0) · source

pub const fn abs_diff(self, other: usize) -> usize

Computes the absolute difference between self and other.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.abs_diff(80), 20usize);\nassert_eq!(100usize.abs_diff(110), 10usize);
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_mul(self, rhs: usize) -> (usize, bool)

Calculates the multiplication of self and rhs.

\n

Returns a tuple of the multiplication along with a boolean\nindicating whether an arithmetic overflow would occur. If an\noverflow would have occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
assert_eq!(5u32.overflowing_mul(2), (10, false));\nassert_eq!(1_000_000_000u32.overflowing_mul(10), (1410065408, true));
\n
1.7.0 (const: 1.52.0) · source

pub const fn overflowing_div(self, rhs: usize) -> (usize, bool)

Calculates the divisor when self is divided by rhs.

\n

Returns a tuple of the divisor along with a boolean indicating\nwhether an arithmetic overflow would occur. Note that for unsigned\nintegers overflow never occurs, so the second value is always\nfalse.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_div(2), (2, false));
\n
1.38.0 (const: 1.52.0) · source

pub const fn overflowing_div_euclid(self, rhs: usize) -> (usize, bool)

Calculates the quotient of Euclidean division self.div_euclid(rhs).

\n

Returns a tuple of the divisor along with a boolean indicating\nwhether an arithmetic overflow would occur. Note that for unsigned\nintegers overflow never occurs, so the second value is always\nfalse.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.overflowing_div(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_div_euclid(2), (2, false));
\n
1.7.0 (const: 1.52.0) · source

pub const fn overflowing_rem(self, rhs: usize) -> (usize, bool)

Calculates the remainder when self is divided by rhs.

\n

Returns a tuple of the remainder after dividing along with a boolean\nindicating whether an arithmetic overflow would occur. Note that for\nunsigned integers overflow never occurs, so the second value is\nalways false.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_rem(2), (1, false));
\n
1.38.0 (const: 1.52.0) · source

pub const fn overflowing_rem_euclid(self, rhs: usize) -> (usize, bool)

Calculates the remainder self.rem_euclid(rhs) as if by Euclidean division.

\n

Returns a tuple of the modulo after dividing along with a boolean\nindicating whether an arithmetic overflow would occur. Note that for\nunsigned integers overflow never occurs, so the second value is\nalways false.\nSince, for the positive integers, all common\ndefinitions of division are equal, this operation\nis exactly equal to self.overflowing_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_rem_euclid(2), (1, false));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_neg(self) -> (usize, bool)

Negates self in an overflowing fashion.

\n

Returns !self + 1 using wrapping operations to return the value\nthat represents the negation of this unsigned value. Note that for\npositive unsigned values overflow always occurs, but negating 0 does\nnot overflow.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0usize.overflowing_neg(), (0, false));\nassert_eq!(2usize.overflowing_neg(), (-2i32 as usize, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_shl(self, rhs: u32) -> (usize, bool)

Shifts self left by rhs bits.

\n

Returns a tuple of the shifted version of self along with a boolean\nindicating whether the shift value was larger than or equal to the\nnumber of bits. If the shift value is too large, then value is\nmasked (N-1) where N is the number of bits, and this value is then\nused to perform the shift.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0x1usize.overflowing_shl(4), (0x10, false));\nassert_eq!(0x1usize.overflowing_shl(132), (0x10, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_shr(self, rhs: u32) -> (usize, bool)

Shifts self right by rhs bits.

\n

Returns a tuple of the shifted version of self along with a boolean\nindicating whether the shift value was larger than or equal to the\nnumber of bits. If the shift value is too large, then value is\nmasked (N-1) where N is the number of bits, and this value is then\nused to perform the shift.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0x10usize.overflowing_shr(4), (0x1, false));\nassert_eq!(0x10usize.overflowing_shr(132), (0x1, true));
\n
1.34.0 (const: 1.50.0) · source

pub const fn overflowing_pow(self, exp: u32) -> (usize, bool)

Raises self to the power of exp, using exponentiation by squaring.

\n

Returns a tuple of the exponentiation along with a bool indicating\nwhether an overflow happened.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(3usize.overflowing_pow(5), (243, false));\nassert_eq!(3u8.overflowing_pow(6), (217, true));
\n
1.0.0 (const: 1.50.0) · source

pub const fn pow(self, exp: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.pow(5), 32);
\n
source

pub const fn isqrt(self) -> usize

🔬This is a nightly-only experimental API. (isqrt)

Returns the square root of the number, rounded down.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(isqrt)]\nassert_eq!(10usize.isqrt(), 3);
\n
1.38.0 (const: 1.52.0) · source

pub const fn div_euclid(self, rhs: usize) -> usize

Performs Euclidean division.

\n

Since, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self / rhs.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7usize.div_euclid(4), 1); // or any other integer type
\n
1.38.0 (const: 1.52.0) · source

pub const fn rem_euclid(self, rhs: usize) -> usize

Calculates the least remainder of self (mod rhs).

\n

Since, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self % rhs.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7usize.rem_euclid(4), 3); // or any other integer type
\n
source

pub const fn div_floor(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (int_roundings)

Calculates the quotient of self and rhs, rounding the result towards negative infinity.

\n

This is the same as performing self / rhs for all unsigned integers.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(int_roundings)]\nassert_eq!(7_usize.div_floor(4), 1);
\n
1.73.0 (const: 1.73.0) · source

pub const fn div_ceil(self, rhs: usize) -> usize

Calculates the quotient of self and rhs, rounding the result towards positive infinity.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7_usize.div_ceil(4), 2);
\n
1.73.0 (const: 1.73.0) · source

pub const fn next_multiple_of(self, rhs: usize) -> usize

Calculates the smallest value greater than or equal to self that\nis a multiple of rhs.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Overflow behavior
\n

On overflow, this function will panic if overflow checks are enabled (default in debug\nmode) and wrap if overflow checks are disabled (default in release mode).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(16_usize.next_multiple_of(8), 16);\nassert_eq!(23_usize.next_multiple_of(8), 24);
\n
1.73.0 (const: 1.73.0) · source

pub const fn checked_next_multiple_of(self, rhs: usize) -> Option<usize>

Calculates the smallest value greater than or equal to self that\nis a multiple of rhs. Returns None if rhs is zero or the\noperation would result in overflow.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(16_usize.checked_next_multiple_of(8), Some(16));\nassert_eq!(23_usize.checked_next_multiple_of(8), Some(24));\nassert_eq!(1_usize.checked_next_multiple_of(0), None);\nassert_eq!(usize::MAX.checked_next_multiple_of(2), None);
\n
1.0.0 (const: 1.32.0) · source

pub const fn is_power_of_two(self) -> bool

Returns true if and only if self == 2^k for some k.

\n
§Examples
\n

Basic usage:

\n\n
assert!(16usize.is_power_of_two());\nassert!(!10usize.is_power_of_two());
\n
1.0.0 (const: 1.50.0) · source

pub const fn next_power_of_two(self) -> usize

Returns the smallest power of two greater than or equal to self.

\n

When return value overflows (i.e., self > (1 << (N-1)) for type\nuN), it panics in debug mode and the return value is wrapped to 0 in\nrelease mode (the only situation in which this method can return 0).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.next_power_of_two(), 2);\nassert_eq!(3usize.next_power_of_two(), 4);\nassert_eq!(0usize.next_power_of_two(), 1);
\n
1.0.0 (const: 1.50.0) · source

pub const fn checked_next_power_of_two(self) -> Option<usize>

Returns the smallest power of two greater than or equal to self. If\nthe next power of two is greater than the type’s maximum value,\nNone is returned, otherwise the power of two is wrapped in Some.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.checked_next_power_of_two(), Some(2));\nassert_eq!(3usize.checked_next_power_of_two(), Some(4));\nassert_eq!(usize::MAX.checked_next_power_of_two(), None);
\n
source

pub const fn wrapping_next_power_of_two(self) -> usize

🔬This is a nightly-only experimental API. (wrapping_next_power_of_two)

Returns the smallest power of two greater than or equal to n. If\nthe next power of two is greater than the type’s maximum value,\nthe return value is wrapped to 0.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(wrapping_next_power_of_two)]\n\nassert_eq!(2usize.wrapping_next_power_of_two(), 2);\nassert_eq!(3usize.wrapping_next_power_of_two(), 4);\nassert_eq!(usize::MAX.wrapping_next_power_of_two(), 0);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_be_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nbig-endian (network) byte order.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_be_bytes();\nassert_eq!(bytes, [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_le_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nlittle-endian byte order.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_le_bytes();\nassert_eq!(bytes, [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_ne_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nnative byte order.

\n

As the target platform’s native endianness is used, portable code\nshould use to_be_bytes or to_le_bytes, as appropriate,\ninstead.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_ne_bytes();\nassert_eq!(\n    bytes,\n    if cfg!(target_endian = \"big\") {\n        [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]\n    } else {\n        [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]\n    }\n);
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_be_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its representation\nas a byte array in big endian.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_be_bytes([0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]);\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_be_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_be_bytes(int_bytes.try_into().unwrap())\n}
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_le_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its representation\nas a byte array in little endian.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_le_bytes([0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_le_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_le_bytes(int_bytes.try_into().unwrap())\n}
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_ne_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its memory representation\nas a byte array in native endianness.

\n

As the target platform’s native endianness is used, portable code\nlikely wants to use from_be_bytes or from_le_bytes, as\nappropriate instead.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_ne_bytes(if cfg!(target_endian = \"big\") {\n    [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]\n} else {\n    [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]\n});\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_ne_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_ne_bytes(int_bytes.try_into().unwrap())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn min_value() -> usize

👎Deprecating in a future version: replaced by the MIN associated constant on this type

New code should prefer to use\nusize::MIN instead.

\n

Returns the smallest value that can be represented by this integer type.

\n
1.0.0 (const: 1.32.0) · source

pub const fn max_value() -> usize

👎Deprecating in a future version: replaced by the MAX associated constant on this type

New code should prefer to use\nusize::MAX instead.

\n

Returns the largest value that can be represented by this integer type.

\n
source

pub const fn widening_mul(self, rhs: usize) -> (usize, usize)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates the complete product self * rhs without the possibility to overflow.

\n

This returns the low-order (wrapping) bits and the high-order (overflow) bits\nof the result as two separate values, in that order.

\n

If you also need to add a carry to the wide result, then you want\nSelf::carrying_mul instead.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(5u32.widening_mul(2), (10, 0));\nassert_eq!(1_000_000_000u32.widening_mul(10), (1410065408, 2));
\n
source

pub const fn carrying_mul(self, rhs: usize, carry: usize) -> (usize, usize)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates the “full multiplication” self * rhs + carry\nwithout the possibility to overflow.

\n

This returns the low-order (wrapping) bits and the high-order (overflow) bits\nof the result as two separate values, in that order.

\n

Performs “long multiplication” which takes in an extra amount to add, and may return an\nadditional amount of overflow. This allows for chaining together multiple\nmultiplications to create “big integers” which represent larger values.

\n

If you don’t need the carry, then you can use Self::widening_mul instead.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(5u32.carrying_mul(2, 0), (10, 0));\nassert_eq!(5u32.carrying_mul(2, 10), (20, 0));\nassert_eq!(1_000_000_000u32.carrying_mul(10, 0), (1410065408, 2));\nassert_eq!(1_000_000_000u32.carrying_mul(10, 10), (1410065418, 2));\nassert_eq!(usize::MAX.carrying_mul(usize::MAX, usize::MAX), (0, usize::MAX));
\n

This is the core operation needed for scalar multiplication when\nimplementing it for wider-than-native types.

\n\n
#![feature(bigint_helper_methods)]\nfn scalar_mul_eq(little_endian_digits: &mut Vec<u16>, multiplicand: u16) {\n    let mut carry = 0;\n    for d in little_endian_digits.iter_mut() {\n        (*d, carry) = d.carrying_mul(multiplicand, carry);\n    }\n    if carry != 0 {\n        little_endian_digits.push(carry);\n    }\n}\n\nlet mut v = vec![10, 20];\nscalar_mul_eq(&mut v, 3);\nassert_eq!(v, [30, 60]);\n\nassert_eq!(0x87654321_u64 * 0xFEED, 0x86D3D159E38D);\nlet mut v = vec![0x4321, 0x8765];\nscalar_mul_eq(&mut v, 0xFEED);\nassert_eq!(v, [0xE38D, 0xD159, 0x86D3]);
\n

If carry is zero, this is similar to overflowing_mul,\nexcept that it gives the value of the overflow instead of just whether one happened:

\n\n
#![feature(bigint_helper_methods)]\nlet r = u8::carrying_mul(7, 13, 0);\nassert_eq!((r.0, r.1 != 0), u8::overflowing_mul(7, 13));\nlet r = u8::carrying_mul(13, 42, 0);\nassert_eq!((r.0, r.1 != 0), u8::overflowing_mul(13, 42));
\n

The value of the first field in the returned tuple matches what you’d get\nby combining the wrapping_mul and\nwrapping_add methods:

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(\n    789_u16.carrying_mul(456, 123).0,\n    789_u16.wrapping_mul(456).wrapping_add(123),\n);
\n
source

pub const fn midpoint(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (num_midpoint)

Calculates the middle point of self and rhs.

\n

midpoint(a, b) is (a + b) >> 1 as if it were performed in a\nsufficiently-large signed integral type. This implies that the result is\nalways rounded towards negative infinity and that no overflow will ever occur.

\n
§Examples
\n
#![feature(num_midpoint)]\nassert_eq!(0usize.midpoint(4), 2);\nassert_eq!(1usize.midpoint(4), 2);
\n
",0,"tor_interface::tor_provider::CircuitToken"],["
source§

impl usize

1.0.0 (const: unstable) · source

pub fn from_str_radix(src: &str, radix: u32) -> Result<usize, ParseIntError>

Converts a string slice in a given base to an integer.

\n

The string is expected to be an optional + sign\nfollowed by digits.\nLeading and trailing whitespace represent an error.\nDigits are a subset of these characters, depending on radix:

\n
    \n
  • 0-9
  • \n
  • a-z
  • \n
  • A-Z
  • \n
\n
§Panics
\n

This function panics if radix is not in the range from 2 to 36.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::from_str_radix(\"A\", 16), Ok(10));
\n
",0,"tor_interface::tor_provider::CircuitToken"],["
§

impl AtLeast16 for usize

","AtLeast16","tor_interface::tor_provider::CircuitToken"],["
§

impl AtLeast32 for usize

","AtLeast32","tor_interface::tor_provider::CircuitToken"],["
§

impl AtLeast64 for usize

","AtLeast64","tor_interface::tor_provider::CircuitToken"],["
§

impl AtLeast8 for usize

","AtLeast8","tor_interface::tor_provider::CircuitToken"],["
§

impl AtMost128 for usize

","AtMost128","tor_interface::tor_provider::CircuitToken"],["
§

impl AtMost64 for usize

","AtMost64","tor_interface::tor_provider::CircuitToken"],["
§

impl BitOps for usize

","BitOps","tor_interface::tor_provider::CircuitToken"],["
source§

impl ConstParamTy for usize

","ConstParamTy","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Copy for usize

","Copy","tor_interface::tor_provider::CircuitToken"],["
§

impl DefaultIsZeroes for usize

","DefaultIsZeroes","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Eq for usize

","Eq","tor_interface::tor_provider::CircuitToken"],["
§

impl ExtendTarget<usize> for usize

","ExtendTarget","tor_interface::tor_provider::CircuitToken"],["
source§

impl Index for usize

","Index","tor_interface::tor_provider::CircuitToken"],["
§

impl Index for usize

","Index","tor_interface::tor_provider::CircuitToken"],["
source§

impl Integer for usize

","Integer","tor_interface::tor_provider::CircuitToken"],["
§

impl Is64 for usize

","Is64","tor_interface::tor_provider::CircuitToken"],["
§

impl NotAutoValue for usize

","NotAutoValue","tor_interface::tor_provider::CircuitToken"],["
§

impl NumericOps for usize

","NumericOps","tor_interface::tor_provider::CircuitToken"],["
source§

impl SimdCast for usize

","SimdCast","tor_interface::tor_provider::CircuitToken"],["
source§

impl StructuralPartialEq for usize

","StructuralPartialEq","tor_interface::tor_provider::CircuitToken"],["
§

impl TruncateTarget<u16> for usize

","TruncateTarget","tor_interface::tor_provider::CircuitToken"],["
§

impl TruncateTarget<u8> for usize

","TruncateTarget","tor_interface::tor_provider::CircuitToken"],["
§

impl TruncateTarget<usize> for usize

","TruncateTarget","tor_interface::tor_provider::CircuitToken"],["
source§

impl TrustedStep for usize

","TrustedStep","tor_interface::tor_provider::CircuitToken"],["
§

impl Uint for usize

","Uint","tor_interface::tor_provider::CircuitToken"],["
source§

impl Unsigned for usize

","Unsigned","tor_interface::tor_provider::CircuitToken"],["
source§

impl Weight for usize

","Weight","tor_interface::tor_provider::CircuitToken"],["
source§

impl ZeroablePrimitive for usize

","ZeroablePrimitive","tor_interface::tor_provider::CircuitToken"]] +"gosling":[["
§

impl<T> Accumulate<T> for usize

§

fn initial(_capacity: Option<usize>) -> usize

Create a new Extend of the correct type
§

fn accumulate(&mut self, _acc: T)

Accumulate the input into an accumulator
","Accumulate","gosling::context::HandshakeHandle"],["
source§

impl<'a> Add<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the + operator.
source§

fn add(self, other: &BigInt) -> BigInt

Performs the + operation. Read more
","Add<&'a BigInt>","gosling::context::HandshakeHandle"],["
source§

impl<'a> Add<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the + operator.
source§

fn add(self, other: &BigUint) -> BigUint

Performs the + operation. Read more
","Add<&'a BigUint>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Add<&usize> for usize

§

type Output = <usize as Add>::Output

The resulting type after applying the + operator.
source§

fn add(self, other: &usize) -> <usize as Add>::Output

Performs the + operation. Read more
","Add<&usize>","gosling::context::HandshakeHandle"],["
source§

impl Add<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the + operator.
source§

fn add(self, other: BigInt) -> BigInt

Performs the + operation. Read more
","Add","gosling::context::HandshakeHandle"],["
source§

impl Add<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the + operator.
source§

fn add(self, other: BigUint) -> BigUint

Performs the + operation. Read more
","Add","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Add for usize

§

type Output = usize

The resulting type after applying the + operator.
source§

fn add(self, other: usize) -> usize

Performs the + operation. Read more
","Add","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl AddAssign<&usize> for usize

source§

fn add_assign(&mut self, other: &usize)

Performs the += operation. Read more
","AddAssign<&usize>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl AddAssign for usize

source§

fn add_assign(&mut self, other: usize)

Performs the += operation. Read more
","AddAssign","gosling::context::HandshakeHandle"],["
§

impl AsAny for usize

§

fn as_any(&self) -> &(dyn Any + 'static)

Returns thick pointer of &dyn Any type, that can be later downcasted\nback to a reference of the original type.
","AsAny","gosling::context::HandshakeHandle"],["
§

impl AsBytes for usize

§

fn as_bytes(&self) -> &[u8]

Gets the bytes of this value. Read more
§

fn as_bytes_mut(&mut self) -> &mut [u8]
where\n Self: FromBytes,

Gets the bytes of this value mutably. Read more
§

fn write_to(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to bytes. Read more
§

fn write_to_prefix(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to the prefix of bytes. Read more
§

fn write_to_suffix(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to the suffix of bytes. Read more
","AsBytes","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<f32> for usize

source§

fn as_(self) -> f32

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<f64> for usize

source§

fn as_(self) -> f64

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<i128> for usize

source§

fn as_(self) -> i128

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<i16> for usize

source§

fn as_(self) -> i16

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<i32> for usize

source§

fn as_(self) -> i32

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<i64> for usize

source§

fn as_(self) -> i64

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<i8> for usize

source§

fn as_(self) -> i8

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<isize> for usize

source§

fn as_(self) -> isize

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<u128> for usize

source§

fn as_(self) -> u128

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<u16> for usize

source§

fn as_(self) -> u16

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<u32> for usize

source§

fn as_(self) -> u32

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<u64> for usize

source§

fn as_(self) -> u64

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<u8> for usize

source§

fn as_(self) -> u8

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
source§

impl AsPrimitive<usize> for usize

source§

fn as_(self) -> usize

Convert a value to another, using the as operator.
","AsPrimitive","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Binary for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Binary","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl BitAnd<&usize> for usize

§

type Output = <usize as BitAnd>::Output

The resulting type after applying the & operator.
source§

fn bitand(self, other: &usize) -> <usize as BitAnd>::Output

Performs the & operation. Read more
","BitAnd<&usize>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl BitAnd for usize

§

type Output = usize

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: usize) -> usize

Performs the & operation. Read more
","BitAnd","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl BitAndAssign<&usize> for usize

source§

fn bitand_assign(&mut self, other: &usize)

Performs the &= operation. Read more
","BitAndAssign<&usize>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl BitAndAssign for usize

source§

fn bitand_assign(&mut self, other: usize)

Performs the &= operation. Read more
","BitAndAssign","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl BitOr<&usize> for usize

§

type Output = <usize as BitOr>::Output

The resulting type after applying the | operator.
source§

fn bitor(self, other: &usize) -> <usize as BitOr>::Output

Performs the | operation. Read more
","BitOr<&usize>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl BitOr for usize

§

type Output = usize

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: usize) -> usize

Performs the | operation. Read more
","BitOr","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl BitOrAssign<&usize> for usize

source§

fn bitor_assign(&mut self, other: &usize)

Performs the |= operation. Read more
","BitOrAssign<&usize>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl BitOrAssign for usize

source§

fn bitor_assign(&mut self, other: usize)

Performs the |= operation. Read more
","BitOrAssign","gosling::context::HandshakeHandle"],["
§

impl BitRegister for usize

§

const ALL: usize = 18_446_744_073_709_551_615usize

The literal !0.
§

const INDX: u8 = _

The number of bits required to store an index in the range 0 .. BITS.
§

const MASK: u8 = _

A mask over all bits that can be used as an index within the element.\nThis is the value with the least significant INDX-many bits set high.
","BitRegister","gosling::context::HandshakeHandle"],["
§

impl<'a, T, O> BitSliceIndex<'a, T, O> for usize
where\n T: BitStore,\n O: BitOrder,

§

type Immut = BitRef<'a, Const, T, O>

The output type of immutable access.
§

type Mut = BitRef<'a, Mut, T, O>

The output type of mutable access.
§

fn get(\n self,\n bits: &'a BitSlice<T, O>,\n) -> Option<<usize as BitSliceIndex<'a, T, O>>::Immut>

Immutably indexes into a bit-slice, returning None if self is out of\nbounds. Read more
§

fn get_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> Option<<usize as BitSliceIndex<'a, T, O>>::Mut>

Mutably indexes into a bit-slice, returning None if self is out of\nbounds. Read more
§

unsafe fn get_unchecked(\n self,\n bits: &'a BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Immut

Immutably indexes into a bit-slice without doing any bounds checking. Read more
§

unsafe fn get_unchecked_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Mut

Mutably indexes into a bit-slice without doing any bounds checking. Read more
§

fn index(\n self,\n bits: &'a BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Immut

Immutably indexes into a bit-slice, panicking if self is out of\nbounds. Read more
§

fn index_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Mut

Mutably indexes into a bit-slice, panicking if self is out of bounds. Read more
","BitSliceIndex<'a, T, O>","gosling::context::HandshakeHandle"],["
§

impl BitStore for usize

§

type Access = Cell<usize>

The unsigned integers will only be BitStore type parameters\nfor handles to unaliased memory, following the normal Rust\nreference rules.

\n
§

type Mem = usize

The element type used in the memory region underlying a BitSlice. It\nis always one of the unsigned integer fundamentals.
§

type Alias = BitSafeUsize

A sibling BitStore implementor that is known to be alias-safe. It is\nused when a BitSlice introduces multiple handles that view the same\nmemory location, and at least one of them has write capabilities to it.\nIt must have the same underlying memory type, and can only change access\npatterns or public-facing usage.
§

type Unalias = usize

The inverse of ::Alias. It is used when a BitSlice removes the\nconditions that required a T -> T::Alias transition.
§

const ZERO: usize = 0usize

The zero constant.
§

fn new(value: <usize as BitStore>::Mem) -> usize

Wraps a raw memory value as a BitStore type.
§

fn load_value(&self) -> <usize as BitStore>::Mem

Loads a value out of the memory system according to the ::Access\nrules. This may be called when the value is aliased by a write-capable\nreference.
§

fn store_value(&mut self, value: <usize as BitStore>::Mem)

Stores a value into the memory system. This is only called when there\nare no other handles to the value, and it may bypass ::Access\nconstraints.
§

const ALIGNED_TO_SIZE: [(); 1] = _

All implementors are required to have their alignment match their size. Read more
§

const ALIAS_WIDTH: [(); 1] = _

All implementors are required to have Self and Self::Alias be equal\nin representation. This is true by fiat for all types except the\nunsigned integers. Read more
§

fn get_bit<O>(&self, index: BitIdx<Self::Mem>) -> bool
where\n O: BitOrder,

Reads a single bit out of the memory system according to the ::Access\nrules. This is lifted from BitAccess so that it can be used\nelsewhere without additional casts. Read more
","BitStore","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl BitXor<&usize> for usize

§

type Output = <usize as BitXor>::Output

The resulting type after applying the ^ operator.
source§

fn bitxor(self, other: &usize) -> <usize as BitXor>::Output

Performs the ^ operation. Read more
","BitXor<&usize>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl BitXor for usize

§

type Output = usize

The resulting type after applying the ^ operator.
source§

fn bitxor(self, other: usize) -> usize

Performs the ^ operation. Read more
","BitXor","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl BitXorAssign<&usize> for usize

source§

fn bitxor_assign(&mut self, other: &usize)

Performs the ^= operation. Read more
","BitXorAssign<&usize>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl BitXorAssign for usize

source§

fn bitxor_assign(&mut self, other: usize)

Performs the ^= operation. Read more
","BitXorAssign","gosling::context::HandshakeHandle"],["
§

impl Bits for usize

§

const EMPTY: usize = 0usize

A value with all bits unset.
§

const ALL: usize = 18_446_744_073_709_551_615usize

A value with all bits set.
","Bits","gosling::context::HandshakeHandle"],["
source§

impl Bounded for usize

source§

fn min_value() -> usize

Returns the smallest finite number this type can represent
source§

fn max_value() -> usize

Returns the largest finite number this type can represent
","Bounded","gosling::context::HandshakeHandle"],["
§

impl CastSigned for usize

§

type Signed = isize

The signed integer type with the same size as Self.
§

fn cast_signed(self) -> <usize as CastSigned>::Signed

Cast an integer to the signed integer of the same size.
","CastSigned","gosling::context::HandshakeHandle"],["
§

impl CastUnsigned for usize

§

type Unsigned = usize

The unsigned integer type with the same size as Self.
§

fn cast_unsigned(self) -> <usize as CastUnsigned>::Unsigned

Cast an integer to the unsigned integer of the same size.
","CastUnsigned","gosling::context::HandshakeHandle"],["
source§

impl CheckedAdd for usize

source§

fn checked_add(&self, v: &usize) -> Option<usize>

Adds two numbers, checking for overflow. If overflow happens, None is\nreturned.
","CheckedAdd","gosling::context::HandshakeHandle"],["
source§

impl CheckedDiv for usize

source§

fn checked_div(&self, v: &usize) -> Option<usize>

Divides two numbers, checking for underflow, overflow and division by\nzero. If any of that happens, None is returned.
","CheckedDiv","gosling::context::HandshakeHandle"],["
source§

impl CheckedEuclid for usize

source§

fn checked_div_euclid(&self, v: &usize) -> Option<usize>

Performs euclid division that returns None instead of panicking on division by zero\nand instead of wrapping around on underflow and overflow.
source§

fn checked_rem_euclid(&self, v: &usize) -> Option<usize>

Finds the euclid remainder of dividing two numbers, checking for underflow, overflow and\ndivision by zero. If any of that happens, None is returned.
source§

fn checked_div_rem_euclid(&self, v: &Self) -> Option<(Self, Self)>

Returns both the quotient and remainder from checked Euclidean division. Read more
","CheckedEuclid","gosling::context::HandshakeHandle"],["
source§

impl CheckedMul for usize

source§

fn checked_mul(&self, v: &usize) -> Option<usize>

Multiplies two numbers, checking for underflow or overflow. If underflow\nor overflow happens, None is returned.
","CheckedMul","gosling::context::HandshakeHandle"],["
source§

impl CheckedNeg for usize

source§

fn checked_neg(&self) -> Option<usize>

Negates a number, returning None for results that can’t be represented, like signed MIN\nvalues that can’t be positive, or non-zero unsigned values that can’t be negative. Read more
","CheckedNeg","gosling::context::HandshakeHandle"],["
source§

impl CheckedRem for usize

source§

fn checked_rem(&self, v: &usize) -> Option<usize>

Finds the remainder of dividing two numbers, checking for underflow, overflow and division\nby zero. If any of that happens, None is returned. Read more
","CheckedRem","gosling::context::HandshakeHandle"],["
source§

impl CheckedShl for usize

source§

fn checked_shl(&self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None\nif rhs is larger than or equal to the number of bits in self. Read more
","CheckedShl","gosling::context::HandshakeHandle"],["
source§

impl CheckedShr for usize

source§

fn checked_shr(&self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None\nif rhs is larger than or equal to the number of bits in self. Read more
","CheckedShr","gosling::context::HandshakeHandle"],["
source§

impl CheckedSub for usize

source§

fn checked_sub(&self, v: &usize) -> Option<usize>

Subtracts two numbers, checking for underflow. If underflow happens,\nNone is returned.
","CheckedSub","gosling::context::HandshakeHandle"],["
§

impl<T> CheckedSum<usize> for T
where\n T: IntoIterator<Item = usize>,

§

fn checked_sum(self) -> Result<usize, Error>

Iterate over the values of this type, computing a checked sum. Read more
","CheckedSum","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Clone for usize

source§

fn clone(&self) -> usize

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
","Clone","gosling::context::HandshakeHandle"],["
source§

impl ConstOne for usize

source§

const ONE: usize = 1usize

The multiplicative identity element of Self, 1.
","ConstOne","gosling::context::HandshakeHandle"],["
source§

impl ConstZero for usize

source§

const ZERO: usize = 0usize

The additive identity element of Self, 0.
","ConstZero","gosling::context::HandshakeHandle"],["
source§

impl ConstantTimeEq for usize

source§

fn ct_eq(&self, other: &usize) -> Choice

Determine if two items are equal. Read more
source§

fn ct_ne(&self, other: &Self) -> Choice

Determine if two items are NOT equal. Read more
","ConstantTimeEq","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Debug for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Debug","gosling::context::HandshakeHandle"],["
§

impl Decode for usize

Decode a usize.

\n

Uses [Decode] impl on u32 and then converts to a usize, handling\npotential overflow if usize is smaller than u32.

\n

Enforces a library-internal limit of 1048575, as the main use case for\nusize is length prefixes.

\n
§

type Error = Error

Type returned in the event of a decoding error.
§

fn decode(reader: &mut impl Reader) -> Result<usize, Error>

Attempt to decode a value of this type using the provided [Reader].
","Decode","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Default for usize

source§

fn default() -> usize

Returns the default value of 0

\n
","Default","gosling::context::HandshakeHandle"],["
source§

impl<'de> Deserialize<'de> for usize

source§

fn deserialize<D>(\n deserializer: D,\n) -> Result<usize, <D as Deserializer<'de>>::Error>
where\n D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Display for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Display","gosling::context::HandshakeHandle"],["
source§

impl<'a> Div<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the / operator.
source§

fn div(self, other: &BigInt) -> BigInt

Performs the / operation. Read more
","Div<&'a BigInt>","gosling::context::HandshakeHandle"],["
source§

impl<'a> Div<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the / operator.
source§

fn div(self, other: &BigUint) -> BigUint

Performs the / operation. Read more
","Div<&'a BigUint>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Div<&usize> for usize

§

type Output = <usize as Div>::Output

The resulting type after applying the / operator.
source§

fn div(self, other: &usize) -> <usize as Div>::Output

Performs the / operation. Read more
","Div<&usize>","gosling::context::HandshakeHandle"],["
source§

impl Div<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the / operator.
source§

fn div(self, other: BigInt) -> BigInt

Performs the / operation. Read more
","Div","gosling::context::HandshakeHandle"],["
source§

impl Div<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the / operator.
source§

fn div(self, other: BigUint) -> BigUint

Performs the / operation. Read more
","Div","gosling::context::HandshakeHandle"],["
1.51.0 · source§

impl Div<NonZero<usize>> for usize

source§

fn div(self, other: NonZero<usize>) -> usize

This operation rounds towards zero, truncating any fractional\npart of the exact result, and cannot panic.

\n
§

type Output = usize

The resulting type after applying the / operator.
","Div>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Div for usize

This operation rounds towards zero, truncating any\nfractional part of the exact result.

\n

§Panics

\n

This operation will panic if other == 0.

\n
§

type Output = usize

The resulting type after applying the / operator.
source§

fn div(self, other: usize) -> usize

Performs the / operation. Read more
","Div","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl DivAssign<&usize> for usize

source§

fn div_assign(&mut self, other: &usize)

Performs the /= operation. Read more
","DivAssign<&usize>","gosling::context::HandshakeHandle"],["
1.79.0 · source§

impl DivAssign<NonZero<usize>> for usize

source§

fn div_assign(&mut self, other: NonZero<usize>)

This operation rounds towards zero, truncating any fractional\npart of the exact result, and cannot panic.

\n
","DivAssign>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl DivAssign for usize

source§

fn div_assign(&mut self, other: usize)

Performs the /= operation. Read more
","DivAssign","gosling::context::HandshakeHandle"],["
§

impl Encode for usize

Encode a usize as a uint32 as described in RFC4251 § 5.

\n

Uses [Encode] impl on u32 after converting from a usize, handling\npotential overflow if usize is bigger than u32.

\n
§

fn encoded_len(&self) -> Result<usize, Error>

Get the length of this type encoded in bytes, prior to Base64 encoding.
§

fn encode(&self, writer: &mut impl Writer) -> Result<(), Error>

Encode this value using the provided [Writer].
§

fn encoded_len_prefixed(&self) -> Result<usize, Error>

Return the length of this type after encoding when prepended with a\nuint32 length prefix.
§

fn encode_prefixed(&self, writer: &mut impl Writer) -> Result<(), Error>

Encode this value, first prepending a uint32 length prefix\nset to [Encode::encoded_len].
","Encode","gosling::context::HandshakeHandle"],["
source§

impl Euclid for usize

source§

fn div_euclid(&self, v: &usize) -> usize

Calculates Euclidean division, the matching method for rem_euclid. Read more
source§

fn rem_euclid(&self, v: &usize) -> usize

Calculates the least nonnegative remainder of self (mod v). Read more
source§

fn div_rem_euclid(&self, v: &Self) -> (Self, Self)

Returns both the quotient and remainder from Euclidean division. Read more
","Euclid","gosling::context::HandshakeHandle"],["
source§

impl FmtConst for usize

source§

fn fmt_const(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Print a const expression representing this value.
","FmtConst","gosling::context::HandshakeHandle"],["
source§

impl From<Alignment> for usize

source§

fn from(align: Alignment) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<ByteQty> for usize

§

fn from(value: ByteQty) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<HopNum> for usize

§

fn from(hop: HopNum) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<HsDirPos> for usize

§

fn from(value: HsDirPos) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<IntroPtIndex> for usize

§

fn from(value: IntroPtIndex) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl<const MIN: usize, const MAX: usize> From<RangedUsize<MIN, MAX>> for usize

§

fn from(value: RangedUsize<MIN, MAX>) -> usize

Converts to this type from the input type.
","From>","gosling::context::HandshakeHandle"],["
§

impl From<RouterStatusIdx> for usize

§

fn from(value: RouterStatusIdx) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<State> for usize

§

fn from(src: State) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<Token> for usize

§

fn from(val: Token) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<Token> for usize

§

fn from(val: Token) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl<O> From<U16<O>> for usize
where\n O: ByteOrder,

§

fn from(x: U16<O>) -> usize

Converts to this type from the input type.
","From>","gosling::context::HandshakeHandle"],["
1.28.0 · source§

impl From<bool> for usize

source§

fn from(small: bool) -> usize

Converts a bool to usize losslessly.\nThe resulting value is 0 for false and 1 for true values.

\n
§Examples
\n
assert_eq!(usize::from(true), 1);\nassert_eq!(usize::from(false), 0);
\n
","From","gosling::context::HandshakeHandle"],["
1.26.0 · source§

impl From<u16> for usize

source§

fn from(small: u16) -> usize

Converts u16 to usize losslessly.

\n
","From","gosling::context::HandshakeHandle"],["
§

impl From<u24> for usize

§

fn from(val: u24) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<u40> for usize

§

fn from(val: u40) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<u48> for usize

§

fn from(val: u48) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
§

impl From<u56> for usize

§

fn from(val: u56) -> usize

Converts to this type from the input type.
","From","gosling::context::HandshakeHandle"],["
1.5.0 · source§

impl From<u8> for usize

source§

fn from(small: u8) -> usize

Converts u8 to usize losslessly.

\n
","From","gosling::context::HandshakeHandle"],["
source§

impl FromBytes for usize

§

type Bytes = [u8; 8]

source§

fn from_be_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its representation as a byte array in big endian. Read more
source§

fn from_le_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its representation as a byte array in little endian. Read more
source§

fn from_ne_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its memory representation as a byte array in native endianness. Read more
","FromBytes","gosling::context::HandshakeHandle"],["
§

impl FromBytes for usize

§

fn ref_from(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the given bytes as a &Self without copying. Read more
§

fn ref_from_prefix(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the prefix of the given bytes as a &Self without copying. Read more
§

fn ref_from_suffix(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the suffix of the given bytes as a &Self without copying. Read more
§

fn mut_from(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the given bytes as a &mut Self without copying. Read more
§

fn mut_from_prefix(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the prefix of the given bytes as a &mut Self without\ncopying. Read more
§

fn mut_from_suffix(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the suffix of the given bytes as a &mut Self without copying. Read more
§

fn slice_from(bytes: &[u8]) -> Option<&[Self]>
where\n Self: Sized,

Interprets the given bytes as a &[Self] without copying. Read more
§

fn slice_from_prefix(bytes: &[u8], count: usize) -> Option<(&[Self], &[u8])>
where\n Self: Sized,

Interprets the prefix of the given bytes as a &[Self] with length\nequal to count without copying. Read more
§

fn slice_from_suffix(bytes: &[u8], count: usize) -> Option<(&[u8], &[Self])>
where\n Self: Sized,

Interprets the suffix of the given bytes as a &[Self] with length\nequal to count without copying. Read more
§

fn mut_slice_from(bytes: &mut [u8]) -> Option<&mut [Self]>
where\n Self: Sized + AsBytes,

Interprets the given bytes as a &mut [Self] without copying. Read more
§

fn mut_slice_from_prefix(\n bytes: &mut [u8],\n count: usize,\n) -> Option<(&mut [Self], &mut [u8])>
where\n Self: Sized + AsBytes,

Interprets the prefix of the given bytes as a &mut [Self] with length\nequal to count without copying. Read more
§

fn mut_slice_from_suffix(\n bytes: &mut [u8],\n count: usize,\n) -> Option<(&mut [u8], &mut [Self])>
where\n Self: Sized + AsBytes,

Interprets the suffix of the given bytes as a &mut [Self] with length\nequal to count without copying. Read more
§

fn read_from(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from bytes. Read more
§

fn read_from_prefix(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from the prefix of bytes. Read more
§

fn read_from_suffix(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from the suffix of bytes. Read more
","FromBytes","gosling::context::HandshakeHandle"],["
source§

impl FromPrimitive for usize

source§

fn from_isize(n: isize) -> Option<usize>

Converts an isize to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i8(n: i8) -> Option<usize>

Converts an i8 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i16(n: i16) -> Option<usize>

Converts an i16 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i32(n: i32) -> Option<usize>

Converts an i32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i64(n: i64) -> Option<usize>

Converts an i64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i128(n: i128) -> Option<usize>

Converts an i128 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
source§

fn from_usize(n: usize) -> Option<usize>

Converts a usize to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u8(n: u8) -> Option<usize>

Converts an u8 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u16(n: u16) -> Option<usize>

Converts an u16 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u32(n: u32) -> Option<usize>

Converts an u32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u64(n: u64) -> Option<usize>

Converts an u64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u128(n: u128) -> Option<usize>

Converts an u128 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
source§

fn from_f32(n: f32) -> Option<usize>

Converts a f32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_f64(n: f64) -> Option<usize>

Converts a f64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
","FromPrimitive","gosling::context::HandshakeHandle"],["
§

impl FromSql for usize

§

fn column_result(value: ValueRef<'_>) -> Result<usize, FromSqlError>

Converts SQLite value into Rust value.
","FromSql","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl FromStr for usize

§

type Err = ParseIntError

The associated error which can be returned from parsing.
source§

fn from_str(src: &str) -> Result<usize, ParseIntError>

Parses a string s to return a value of this type. Read more
","FromStr","gosling::context::HandshakeHandle"],["
§

impl FromZeroes for usize

§

fn zero(&mut self)

Overwrites self with zeroes. Read more
§

fn new_zeroed() -> Self
where\n Self: Sized,

Creates an instance of Self from zeroed bytes. Read more
","FromZeroes","gosling::context::HandshakeHandle"],["
§

impl Fundamental for usize

§

fn as_bool(self) -> bool

Tests self != 0.
§

fn as_char(self) -> Option<char>

Represents self as a Unicode Scalar Value, if possible.
§

fn as_i8(self) -> i8

Performs self as i8.
§

fn as_i16(self) -> i16

Performs self as i16.
§

fn as_i32(self) -> i32

Performs self as i32.
§

fn as_i64(self) -> i64

Performs self as i64.
§

fn as_i128(self) -> i128

Performs self as i128.
§

fn as_isize(self) -> isize

Performs self as isize.
§

fn as_u8(self) -> u8

Performs self as u8.
§

fn as_u16(self) -> u16

Performs self as u16.
§

fn as_u32(self) -> u32

Performs self as u32.
§

fn as_u64(self) -> u64

Performs self as u64.
§

fn as_u128(self) -> u128

Performs self as u128.
§

fn as_usize(self) -> usize

Performs self as usize.
§

fn as_f32(self) -> f32

Performs self as f32.
§

fn as_f64(self) -> f64

Performs self as f64.
","Fundamental","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Hash for usize

source§

fn hash<H>(&self, state: &mut H)
where\n H: Hasher,

Feeds this value into the given Hasher. Read more
source§

fn hash_slice<H>(data: &[usize], state: &mut H)
where\n H: Hasher,

Feeds a slice of this type into the given Hasher. Read more
","Hash","gosling::context::HandshakeHandle"],["
source§

impl Integer for usize

source§

fn div_floor(&self, other: &usize) -> usize

Unsigned integer division. Returns the same result as div (/).

\n
source§

fn mod_floor(&self, other: &usize) -> usize

Unsigned integer modulo operation. Returns the same result as rem (%).

\n
source§

fn gcd(&self, other: &usize) -> usize

Calculates the Greatest Common Divisor (GCD) of the number and other

\n
source§

fn lcm(&self, other: &usize) -> usize

Calculates the Lowest Common Multiple (LCM) of the number and other.

\n
source§

fn gcd_lcm(&self, other: &usize) -> (usize, usize)

Calculates the Greatest Common Divisor (GCD) and\nLowest Common Multiple (LCM) of the number and other.

\n
source§

fn is_multiple_of(&self, other: &usize) -> bool

Returns true if the number is a multiple of other.

\n
source§

fn is_even(&self) -> bool

Returns true if the number is divisible by 2.

\n
source§

fn is_odd(&self) -> bool

Returns true if the number is not divisible by 2.

\n
source§

fn div_rem(&self, other: &usize) -> (usize, usize)

Simultaneous truncated integer division and modulus.

\n
source§

fn div_ceil(&self, other: &usize) -> usize

Ceiled integer division. Read more
source§

fn extended_gcd_lcm(&self, other: &usize) -> (ExtendedGcd<usize>, usize)

Greatest common divisor, least common multiple, and Bézout coefficients.
source§

fn extended_gcd(&self, other: &Self) -> ExtendedGcd<Self>
where\n Self: Clone,

Greatest common divisor and Bézout coefficients. Read more
source§

fn divides(&self, other: &Self) -> bool

👎Deprecated: Please use is_multiple_of instead
Deprecated, use is_multiple_of instead.
source§

fn div_mod_floor(&self, other: &Self) -> (Self, Self)

Simultaneous floored integer division and modulus.\nReturns (quotient, remainder). Read more
source§

fn next_multiple_of(&self, other: &Self) -> Self
where\n Self: Clone,

Rounds up to nearest multiple of argument. Read more
source§

fn prev_multiple_of(&self, other: &Self) -> Self
where\n Self: Clone,

Rounds down to nearest multiple of argument. Read more
source§

fn dec(&mut self)
where\n Self: Clone,

Decrements self by one. Read more
source§

fn inc(&mut self)
where\n Self: Clone,

Increments self by one. Read more
","Integer","gosling::context::HandshakeHandle"],["
§

impl Integral for usize

§

const ZERO: usize = 0usize

The type’s zero value.
§

const ONE: usize = 1usize

The type’s step value.
§

const MIN: usize = 0usize

The type’s minimum value. This is zero for unsigned integers.
§

const MAX: usize = 18_446_744_073_709_551_615usize

The type’s maximum value.
§

const BITS: u32 = 64u32

The size of this type in bits.
§

fn min_value() -> usize

Returns the smallest value that can be represented by this integer type.
§

fn max_value() -> usize

Returns the largest value that can be represented by this integer type.
§

fn from_str_radix(src: &str, radix: u32) -> Result<usize, ParseIntError>

Converts a string slice in a given base to an integer. Read more
§

fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self.
§

fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self.
§

fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of\nself.
§

fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation of\nself.
§

fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation of\nself.
§

fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation of\nself.
§

fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, wrapping the\ntruncated bits to the end of the resulting integer. Read more
§

fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, wrapping the\ntruncated bits to the beginning of the resulting integer. Read more
§

fn swap_bytes(self) -> usize

Reverses the byte order of the integer.
§

fn reverse_bits(self) -> usize

Reverses the bit pattern of the integer.
§

fn from_be(self) -> usize

Converts an integer from big endian to the target’s endianness. Read more
§

fn from_le(self) -> usize

Converts an integer frm little endian to the target’s endianness. Read more
§

fn to_be(self) -> usize

Converts self to big endian from the target’s endianness. Read more
§

fn to_le(self) -> usize

Converts self to little endian from the target’s endianness. Read more
§

fn checked_add(self, rhs: usize) -> Option<usize>

Checked integer addition. Computes self + rhs, returning None if\noverflow occurred.
§

fn checked_sub(self, rhs: usize) -> Option<usize>

Checked integer subtraction. Computes self - rhs, returning None if\noverflow occurred.
§

fn checked_mul(self, rhs: usize) -> Option<usize>

Checked integer multiplication. Computes self * rhs, returning None\nif overflow occurred.
§

fn checked_div(self, rhs: usize) -> Option<usize>

Checked integer division. Computes self / rhs, returning None if\nrhs == 0 or the division results in overflow.
§

fn checked_div_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean division. Computes self.div_euclid(rhs), returning\nNone if rhs == 0 or the division results in overflow.
§

fn checked_rem(self, rhs: usize) -> Option<usize>

Checked integer remainder. Computes self % rhs, returning None if\nrhs == 0 or the division results in overflow.
§

fn checked_rem_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean remainder. Computes self.rem_euclid(rhs), returning\nNone if rhs == 0 or the division results in overflow.
§

fn checked_neg(self) -> Option<usize>

Checked negation. Computes -self, returning None if self == MIN. Read more
§

fn checked_shl(self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None if rhs is\nlarger than or equal to the number of bits in self.
§

fn checked_shr(self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None if rhs\nis larger than or equal to the number of bits in self.
§

fn checked_pow(self, rhs: u32) -> Option<usize>

Checked exponentiation. Computes self.pow(exp), returning None if\noverflow occurred.
§

fn saturating_add(self, rhs: usize) -> usize

Saturating integer addition. Computes self + rhs, saturating at the\nnumeric bounds instead of overflowing.
§

fn saturating_sub(self, rhs: usize) -> usize

Saturating integer subtraction. Computes self - rhs, saturating at the\nnumeric bounds instead of overflowing.
§

fn saturating_mul(self, rhs: usize) -> usize

Saturating integer multiplication. Computes self * rhs, saturating at\nthe numeric bounds instead of overflowing.
§

fn saturating_pow(self, rhs: u32) -> usize

Saturating integer exponentiation. Computes self.pow(exp), saturating\nat the numeric bounds instead of overflowing.
§

fn wrapping_add(self, rhs: usize) -> usize

Wrapping (modular) addition. Computes self + rhs, wrapping around at\nthe boundary of the type.
§

fn wrapping_sub(self, rhs: usize) -> usize

Wrapping (modular) subtraction. Computes self - rhs, wrapping around\nat the boundary of the type.
§

fn wrapping_mul(self, rhs: usize) -> usize

Wrapping (modular) multiplication. Computes self * rhs, wrapping\naround at the boundary of the type.
§

fn wrapping_div(self, rhs: usize) -> usize

Wrapping (modular) division. Computes self / rhs, wrapping around at\nthe boundary of the type. Read more
§

fn wrapping_div_euclid(self, rhs: usize) -> usize

Wrapping Euclidean division. Computes self.div_euclid(rhs), wrapping\naround at the boundary of the type. Read more
§

fn wrapping_rem(self, rhs: usize) -> usize

Wrapping (modular) remainder. Computes self % rhs, wrapping around at\nthe boundary of the type. Read more
§

fn wrapping_rem_euclid(self, rhs: usize) -> usize

Wrapping Euclidean remainder. Computes self.rem_euclid(rhs), wrapping\naround at the boundary of the type. Read more
§

fn wrapping_neg(self) -> usize

Wrapping (modular) negation. Computes -self, wrapping around at the\nboundary of the type. Read more
§

fn wrapping_shl(self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs), where mask\nremoves any high-order bits of rhs that would cause the shift to\nexceed the bit-width of the type. Read more
§

fn wrapping_shr(self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs), where mask\nremoves any high-order bits of rhs that would cause the shift to\nexceed the bit-width of the type. Read more
§

fn wrapping_pow(self, rhs: u32) -> usize

Wrapping (modular) exponentiation. Computes self.pow(exp), wrapping\naround at the boundary of the type.
§

fn overflowing_add(self, rhs: usize) -> (usize, bool)

Calculates self + rhs Read more
§

fn overflowing_sub(self, rhs: usize) -> (usize, bool)

Calculates self - rhs Read more
§

fn overflowing_mul(self, rhs: usize) -> (usize, bool)

Calculates the multiplication of self and rhs. Read more
§

fn overflowing_div(self, rhs: usize) -> (usize, bool)

Calculates the divisor when self is divided by rhs. Read more
§

fn overflowing_div_euclid(self, rhs: usize) -> (usize, bool)

Calculates the quotient of Euclidean division self.div_euclid(rhs). Read more
§

fn overflowing_rem(self, rhs: usize) -> (usize, bool)

Calculates the remainder when self is divided by rhs. Read more
§

fn overflowing_rem_euclid(self, rhs: usize) -> (usize, bool)

Overflowing Euclidean remainder. Calculates self.rem_euclid(rhs). Read more
§

fn overflowing_neg(self) -> (usize, bool)

Negates self, overflowing if this is equal to the minimum value. Read more
§

fn overflowing_shl(self, rhs: u32) -> (usize, bool)

Shifts self left by rhs bits. Read more
§

fn overflowing_shr(self, rhs: u32) -> (usize, bool)

Shifts self right by rhs bits. Read more
§

fn overflowing_pow(self, rhs: u32) -> (usize, bool)

Raises self to the power of exp, using exponentiation by squaring. Read more
§

fn pow(self, rhs: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring.
§

fn div_euclid(self, rhs: usize) -> usize

Calculates the quotient of Euclidean division of self by rhs. Read more
§

fn rem_euclid(self, rhs: usize) -> usize

Calculates the least nonnegative remainder of self (mod rhs). Read more
","Integral","gosling::context::HandshakeHandle"],["
source§

impl IntoBigInt for usize

source§

fn into_bigint(self) -> Option<BigInt>

Converts the value of self to a BigInt.
","IntoBigInt","gosling::context::HandshakeHandle"],["
source§

impl IntoBigUint for usize

source§

fn into_biguint(self) -> Option<BigUint>

Converts the value of self to a BigUint.
","IntoBigUint","gosling::context::HandshakeHandle"],["
source§

impl<'de, E> IntoDeserializer<'de, E> for usize
where\n E: Error,

§

type Deserializer = UsizeDeserializer<E>

The type of the deserializer being converted into.
source§

fn into_deserializer(self) -> UsizeDeserializer<E>

Convert this value into a deserializer.
","IntoDeserializer<'de, E>","gosling::context::HandshakeHandle"],["
§

impl IntoNotification for usize

§

type Tag = ()

The tag data associated with a notification. Read more
§

type Notify = Notify

The notification type. Read more
§

fn into_notification(self) -> <usize as IntoNotification>::Notify

Convert this value into a notification. Read more
§

fn additional(self) -> Additional<Self::Notify>
where\n Self: Sized,

Convert this value into an additional notification. Read more
§

fn relaxed(self) -> Relaxed<Self::Notify>
where\n Self: Sized,

Don’t emit a fence for this notification. Read more
§

fn tag<T>(self, tag: T) -> Tag<Self::Notify, T>
where\n T: Clone,\n Self: Sized + IntoNotification<Tag = ()>,

Use a tag with this notification. Read more
§

fn tag_with<T, F>(self, tag: F) -> TagWith<Self::Notify, F>
where\n Self: Sized + IntoNotification<Tag = ()>,\n F: FnMut() -> T,

Use a function to generate a tag with this notification. Read more
","IntoNotification","gosling::context::HandshakeHandle"],["
1.42.0 · source§

impl LowerExp for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","LowerExp","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl LowerHex for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","LowerHex","gosling::context::HandshakeHandle"],["
source§

impl<'a> Mul<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the * operator.
source§

fn mul(self, other: &BigInt) -> BigInt

Performs the * operation. Read more
","Mul<&'a BigInt>","gosling::context::HandshakeHandle"],["
source§

impl<'a> Mul<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the * operator.
source§

fn mul(self, other: &BigUint) -> BigUint

Performs the * operation. Read more
","Mul<&'a BigUint>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Mul<&usize> for usize

§

type Output = <usize as Mul>::Output

The resulting type after applying the * operator.
source§

fn mul(self, other: &usize) -> <usize as Mul>::Output

Performs the * operation. Read more
","Mul<&usize>","gosling::context::HandshakeHandle"],["
source§

impl Mul<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the * operator.
source§

fn mul(self, other: BigInt) -> BigInt

Performs the * operation. Read more
","Mul","gosling::context::HandshakeHandle"],["
source§

impl Mul<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the * operator.
source§

fn mul(self, other: BigUint) -> BigUint

Performs the * operation. Read more
","Mul","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Mul for usize

§

type Output = usize

The resulting type after applying the * operator.
source§

fn mul(self, other: usize) -> usize

Performs the * operation. Read more
","Mul","gosling::context::HandshakeHandle"],["
source§

impl MulAdd for usize

§

type Output = usize

The resulting type after applying the fused multiply-add.
source§

fn mul_add(self, a: usize, b: usize) -> <usize as MulAdd>::Output

Performs the fused multiply-add operation (self * a) + b
","MulAdd","gosling::context::HandshakeHandle"],["
source§

impl MulAddAssign for usize

source§

fn mul_add_assign(&mut self, a: usize, b: usize)

Performs the fused multiply-add assignment operation *self = (*self * a) + b
","MulAddAssign","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl MulAssign<&usize> for usize

source§

fn mul_assign(&mut self, other: &usize)

Performs the *= operation. Read more
","MulAssign<&usize>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl MulAssign for usize

source§

fn mul_assign(&mut self, other: usize)

Performs the *= operation. Read more
","MulAssign","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Not for usize

§

type Output = usize

The resulting type after applying the ! operator.
source§

fn not(self) -> usize

Performs the unary ! operation. Read more
","Not","gosling::context::HandshakeHandle"],["
source§

impl Num for usize

§

type FromStrRadixErr = ParseIntError

source§

fn from_str_radix(s: &str, radix: u32) -> Result<usize, ParseIntError>

Convert from a string and radix (typically 2..=36). Read more
","Num","gosling::context::HandshakeHandle"],["
source§

impl NumCast for usize

source§

fn from<N>(n: N) -> Option<usize>
where\n N: ToPrimitive,

Creates a number from another value that can be converted into\na primitive via the ToPrimitive trait. If the source value cannot be\nrepresented by the target type, then None is returned. Read more
","NumCast","gosling::context::HandshakeHandle"],["
§

impl Numeric for usize

§

type Bytes = [u8; 8]

The [u8; N] byte array that stores values of Self.
§

fn to_be_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nbig-endian (network) byte order.
§

fn to_le_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nlittle-endian byte order.
§

fn to_ne_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nnative byte order.
§

fn from_be_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its representation as a byte array in big\nendian.
§

fn from_le_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its representation as a byte array in little\nendian.
§

fn from_ne_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its memory representation as a byte array in\nnative endianness.
","Numeric","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Octal for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Octal","gosling::context::HandshakeHandle"],["
source§

impl One for usize

source§

fn one() -> usize

Returns the multiplicative identity element of Self, 1. Read more
source§

fn is_one(&self) -> bool

Returns true if self is equal to the multiplicative identity. Read more
source§

fn set_one(&mut self)

Sets self to the multiplicative identity element of Self, 1.
","One","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Ord for usize

source§

fn cmp(&self, other: &usize) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where\n Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
","Ord","gosling::context::HandshakeHandle"],["
source§

impl OverflowingAdd for usize

source§

fn overflowing_add(&self, v: &usize) -> (usize, bool)

Returns a tuple of the sum along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingAdd","gosling::context::HandshakeHandle"],["
source§

impl OverflowingMul for usize

source§

fn overflowing_mul(&self, v: &usize) -> (usize, bool)

Returns a tuple of the product along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingMul","gosling::context::HandshakeHandle"],["
source§

impl OverflowingSub for usize

source§

fn overflowing_sub(&self, v: &usize) -> (usize, bool)

Returns a tuple of the difference along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingSub","gosling::context::HandshakeHandle"],["
§

impl ParseHex for usize

§

fn parse_hex(input: &str) -> Result<usize, ParseError>

Parse the value from hex.
","ParseHex","gosling::context::HandshakeHandle"],["
source§

impl PartialEq<Value> for usize

source§

fn eq(&self, other: &Value) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl PartialEq for usize

source§

fn eq(&self, other: &usize) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
source§

fn ne(&self, other: &usize) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl PartialOrd for usize

source§

fn partial_cmp(&self, other: &usize) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
source§

fn lt(&self, other: &usize) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
source§

fn le(&self, other: &usize) -> bool

This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
source§

fn ge(&self, other: &usize) -> bool

This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
source§

fn gt(&self, other: &usize) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
","PartialOrd","gosling::context::HandshakeHandle"],["
source§

impl PhfBorrow<usize> for usize

source§

fn borrow(&self) -> &usize

Convert a reference to self to a reference to the borrowed type.
","PhfBorrow","gosling::context::HandshakeHandle"],["
source§

impl PhfHash for usize

source§

fn phf_hash<H>(&self, state: &mut H)
where\n H: Hasher,

Feeds the value into the state given, updating the hasher as necessary.
source§

fn phf_hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the state provided.
","PhfHash","gosling::context::HandshakeHandle"],["
source§

impl<'a> Pow<&'a u16> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u16) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u16>","gosling::context::HandshakeHandle"],["
source§

impl<'a> Pow<&'a u32> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u32) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u32>","gosling::context::HandshakeHandle"],["
source§

impl<'a> Pow<&'a u8> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u8) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u8>","gosling::context::HandshakeHandle"],["
source§

impl<'a> Pow<&'a usize> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a usize) -> usize

Returns self to the power rhs. Read more
","Pow<&'a usize>","gosling::context::HandshakeHandle"],["
source§

impl<U> Pow<PInt<U>> for usize
where\n U: Unsigned + NonZero,

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: PInt<U>) -> <usize as Pow<PInt<U>>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow>","gosling::context::HandshakeHandle"],["
source§

impl<U, B> Pow<UInt<U, B>> for usize
where\n U: Unsigned,\n B: Bit,

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: UInt<U, B>) -> <usize as Pow<UInt<U, B>>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow>","gosling::context::HandshakeHandle"],["
source§

impl Pow<UTerm> for usize

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: UTerm) -> <usize as Pow<UTerm>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow","gosling::context::HandshakeHandle"],["
source§

impl Pow<Z0> for usize

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: Z0) -> <usize as Pow<Z0>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow","gosling::context::HandshakeHandle"],["
source§

impl Pow<u16> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u16) -> usize

Returns self to the power rhs. Read more
","Pow","gosling::context::HandshakeHandle"],["
source§

impl Pow<u32> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u32) -> usize

Returns self to the power rhs. Read more
","Pow","gosling::context::HandshakeHandle"],["
source§

impl Pow<u8> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u8) -> usize

Returns self to the power rhs. Read more
","Pow","gosling::context::HandshakeHandle"],["
source§

impl Pow<usize> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: usize) -> usize

Returns self to the power rhs. Read more
","Pow","gosling::context::HandshakeHandle"],["
source§

impl PrimInt for usize

source§

fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self. Read more
source§

fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self. Read more
source§

fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation\nof self. Read more
source§

fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation\nof self. Read more
source§

fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation\nof self. Read more
source§

fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation\nof self. Read more
source§

fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, wrapping\nthe truncated bits to the end of the resulting integer. Read more
source§

fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, wrapping\nthe truncated bits to the beginning of the resulting integer. Read more
source§

fn signed_shl(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, filling\nzeros in the least significant bits. Read more
source§

fn signed_shr(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, copying\nthe “sign bit” in the most significant bits even for unsigned types. Read more
source§

fn unsigned_shl(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, filling\nzeros in the least significant bits. Read more
source§

fn unsigned_shr(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, filling\nzeros in the most significant bits. Read more
source§

fn swap_bytes(self) -> usize

Reverses the byte order of the integer. Read more
source§

fn reverse_bits(self) -> usize

Reverses the order of bits in the integer. Read more
source§

fn from_be(x: usize) -> usize

Convert an integer from big endian to the target’s endianness. Read more
source§

fn from_le(x: usize) -> usize

Convert an integer from little endian to the target’s endianness. Read more
source§

fn to_be(self) -> usize

Convert self to big endian from the target’s endianness. Read more
source§

fn to_le(self) -> usize

Convert self to little endian from the target’s endianness. Read more
source§

fn pow(self, exp: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring. Read more
","PrimInt","gosling::context::HandshakeHandle"],["
1.12.0 · source§

impl<'a> Product<&'a usize> for usize

source§

fn product<I>(iter: I) -> usize
where\n I: Iterator<Item = &'a usize>,

Method which takes an iterator and generates Self from the elements by\nmultiplying the items.
","Product<&'a usize>","gosling::context::HandshakeHandle"],["
1.12.0 · source§

impl Product for usize

source§

fn product<I>(iter: I) -> usize
where\n I: Iterator<Item = usize>,

Method which takes an iterator and generates Self from the elements by\nmultiplying the items.
","Product","gosling::context::HandshakeHandle"],["
§

impl<R> RangeExt<usize> for R
where\n R: RangeBounds<usize>,

§

fn normalize(\n self,\n start: impl Into<Option<usize>>,\n end: impl Into<Option<usize>>,\n) -> Range<usize>

Normalizes a range-like type to a canonical half-open Range. Read more
§

fn intersection<R2>(self, other: R2) -> Option<Range<usize>>
where\n R2: RangeExt<usize>,

Finds the intersection between two range-likes. The produced Range\nspans only the elements common to both. Read more
§

fn union<R2>(self, other: R2) -> Option<Range<usize>>
where\n R2: RangeExt<usize>,

Finds the union between two range-likes. The produced Range spans all\nelements present in at least one of them. Read more
","RangeExt","gosling::context::HandshakeHandle"],["
source§

impl<'a> Rem<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the % operator.
source§

fn rem(self, other: &BigInt) -> BigInt

Performs the % operation. Read more
","Rem<&'a BigInt>","gosling::context::HandshakeHandle"],["
source§

impl<'a> Rem<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the % operator.
source§

fn rem(self, other: &BigUint) -> BigUint

Performs the % operation. Read more
","Rem<&'a BigUint>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Rem<&usize> for usize

§

type Output = <usize as Rem>::Output

The resulting type after applying the % operator.
source§

fn rem(self, other: &usize) -> <usize as Rem>::Output

Performs the % operation. Read more
","Rem<&usize>","gosling::context::HandshakeHandle"],["
source§

impl Rem<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the % operator.
source§

fn rem(self, other: BigInt) -> BigInt

Performs the % operation. Read more
","Rem","gosling::context::HandshakeHandle"],["
source§

impl Rem<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the % operator.
source§

fn rem(self, other: BigUint) -> BigUint

Performs the % operation. Read more
","Rem","gosling::context::HandshakeHandle"],["
1.51.0 · source§

impl Rem<NonZero<usize>> for usize

source§

fn rem(self, other: NonZero<usize>) -> usize

This operation satisfies n % d == n - (n / d) * d, and cannot panic.

\n
§

type Output = usize

The resulting type after applying the % operator.
","Rem>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Rem for usize

This operation satisfies n % d == n - (n / d) * d. The\nresult has the same sign as the left operand.

\n

§Panics

\n

This operation will panic if other == 0.

\n
§

type Output = usize

The resulting type after applying the % operator.
source§

fn rem(self, other: usize) -> usize

Performs the % operation. Read more
","Rem","gosling::context::HandshakeHandle"],["
source§

impl<'a> RemAssign<&'a BigUint> for usize

source§

fn rem_assign(&mut self, other: &BigUint)

Performs the %= operation. Read more
","RemAssign<&'a BigUint>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl RemAssign<&usize> for usize

source§

fn rem_assign(&mut self, other: &usize)

Performs the %= operation. Read more
","RemAssign<&usize>","gosling::context::HandshakeHandle"],["
source§

impl RemAssign<BigUint> for usize

source§

fn rem_assign(&mut self, other: BigUint)

Performs the %= operation. Read more
","RemAssign","gosling::context::HandshakeHandle"],["
1.79.0 · source§

impl RemAssign<NonZero<usize>> for usize

source§

fn rem_assign(&mut self, other: NonZero<usize>)

This operation satisfies n % d == n - (n / d) * d, and cannot panic.

\n
","RemAssign>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl RemAssign for usize

source§

fn rem_assign(&mut self, other: usize)

Performs the %= operation. Read more
","RemAssign","gosling::context::HandshakeHandle"],["
source§

impl Roots for usize

source§

fn nth_root(&self, n: u32) -> usize

Returns the truncated principal nth root of an integer\n– if x >= 0 { ⌊ⁿ√x⌋ } else { ⌈ⁿ√x⌉ } Read more
source§

fn sqrt(&self) -> usize

Returns the truncated principal square root of an integer – ⌊√x⌋ Read more
source§

fn cbrt(&self) -> usize

Returns the truncated principal cube root of an integer –\nif x >= 0 { ⌊∛x⌋ } else { ⌈∛x⌉ } Read more
","Roots","gosling::context::HandshakeHandle"],["
§

impl RowIndex for usize

§

fn idx(&self, stmt: &Statement<'_>) -> Result<usize, Error>

Returns the index of the appropriate column, or None if no such\ncolumn exists.
","RowIndex","gosling::context::HandshakeHandle"],["
source§

impl SampleUniform for usize

§

type Sampler = UniformInt<usize>

The UniformSampler implementation supporting type X.
","SampleUniform","gosling::context::HandshakeHandle"],["
source§

impl Saturating for usize

source§

fn saturating_add(self, v: usize) -> usize

Saturating addition operator.\nReturns a+b, saturating at the numeric bounds instead of overflowing.
source§

fn saturating_sub(self, v: usize) -> usize

Saturating subtraction operator.\nReturns a-b, saturating at the numeric bounds instead of overflowing.
","Saturating","gosling::context::HandshakeHandle"],["
source§

impl SaturatingAdd for usize

source§

fn saturating_add(&self, v: &usize) -> usize

Saturating addition. Computes self + other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingAdd","gosling::context::HandshakeHandle"],["
source§

impl SaturatingMul for usize

source§

fn saturating_mul(&self, v: &usize) -> usize

Saturating multiplication. Computes self * other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingMul","gosling::context::HandshakeHandle"],["
source§

impl SaturatingSub for usize

source§

fn saturating_sub(&self, v: &usize) -> usize

Saturating subtraction. Computes self - other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingSub","gosling::context::HandshakeHandle"],["
§

impl SeekNum for usize

§

fn from_block_byte<T>(\n block: T,\n byte: u8,\n bs: u8,\n) -> Result<usize, OverflowError>
where\n T: Counter,

Try to get position for block number block, byte position inside\nblock byte, and block size bs.
§

fn into_block_byte<T>(self, bs: u8) -> Result<(T, u8), OverflowError>
where\n T: Counter,

Try to get block number and bytes position for given block size bs.
","SeekNum","gosling::context::HandshakeHandle"],["
source§

impl Serialize for usize

source§

fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where\n S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&i128> for usize

§

type Output = <usize as Shl<i128>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i128) -> <usize as Shl<i128>>::Output

Performs the << operation. Read more
","Shl<&i128>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&i16> for usize

§

type Output = <usize as Shl<i16>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i16) -> <usize as Shl<i16>>::Output

Performs the << operation. Read more
","Shl<&i16>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&i32> for usize

§

type Output = <usize as Shl<i32>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i32) -> <usize as Shl<i32>>::Output

Performs the << operation. Read more
","Shl<&i32>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&i64> for usize

§

type Output = <usize as Shl<i64>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i64) -> <usize as Shl<i64>>::Output

Performs the << operation. Read more
","Shl<&i64>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&i8> for usize

§

type Output = <usize as Shl<i8>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i8) -> <usize as Shl<i8>>::Output

Performs the << operation. Read more
","Shl<&i8>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&isize> for usize

§

type Output = <usize as Shl<isize>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &isize) -> <usize as Shl<isize>>::Output

Performs the << operation. Read more
","Shl<&isize>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&u128> for usize

§

type Output = <usize as Shl<u128>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u128) -> <usize as Shl<u128>>::Output

Performs the << operation. Read more
","Shl<&u128>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&u16> for usize

§

type Output = <usize as Shl<u16>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u16) -> <usize as Shl<u16>>::Output

Performs the << operation. Read more
","Shl<&u16>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&u32> for usize

§

type Output = <usize as Shl<u32>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u32) -> <usize as Shl<u32>>::Output

Performs the << operation. Read more
","Shl<&u32>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&u64> for usize

§

type Output = <usize as Shl<u64>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u64) -> <usize as Shl<u64>>::Output

Performs the << operation. Read more
","Shl<&u64>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&u8> for usize

§

type Output = <usize as Shl<u8>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u8) -> <usize as Shl<u8>>::Output

Performs the << operation. Read more
","Shl<&u8>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<&usize> for usize

§

type Output = <usize as Shl>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &usize) -> <usize as Shl>::Output

Performs the << operation. Read more
","Shl<&usize>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<i128> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i128) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<i16> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i16) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<i32> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i32) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<i64> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i64) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<i8> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i8) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<isize> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: isize) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<u128> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u128) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<u16> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u16) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<u32> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u32) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<u64> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u64) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl<u8> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u8) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shl for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: usize) -> usize

Performs the << operation. Read more
","Shl","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&i128> for usize

source§

fn shl_assign(&mut self, other: &i128)

Performs the <<= operation. Read more
","ShlAssign<&i128>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&i16> for usize

source§

fn shl_assign(&mut self, other: &i16)

Performs the <<= operation. Read more
","ShlAssign<&i16>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&i32> for usize

source§

fn shl_assign(&mut self, other: &i32)

Performs the <<= operation. Read more
","ShlAssign<&i32>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&i64> for usize

source§

fn shl_assign(&mut self, other: &i64)

Performs the <<= operation. Read more
","ShlAssign<&i64>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&i8> for usize

source§

fn shl_assign(&mut self, other: &i8)

Performs the <<= operation. Read more
","ShlAssign<&i8>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&isize> for usize

source§

fn shl_assign(&mut self, other: &isize)

Performs the <<= operation. Read more
","ShlAssign<&isize>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&u128> for usize

source§

fn shl_assign(&mut self, other: &u128)

Performs the <<= operation. Read more
","ShlAssign<&u128>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&u16> for usize

source§

fn shl_assign(&mut self, other: &u16)

Performs the <<= operation. Read more
","ShlAssign<&u16>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&u32> for usize

source§

fn shl_assign(&mut self, other: &u32)

Performs the <<= operation. Read more
","ShlAssign<&u32>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&u64> for usize

source§

fn shl_assign(&mut self, other: &u64)

Performs the <<= operation. Read more
","ShlAssign<&u64>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&u8> for usize

source§

fn shl_assign(&mut self, other: &u8)

Performs the <<= operation. Read more
","ShlAssign<&u8>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShlAssign<&usize> for usize

source§

fn shl_assign(&mut self, other: &usize)

Performs the <<= operation. Read more
","ShlAssign<&usize>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<i128> for usize

source§

fn shl_assign(&mut self, other: i128)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<i16> for usize

source§

fn shl_assign(&mut self, other: i16)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<i32> for usize

source§

fn shl_assign(&mut self, other: i32)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<i64> for usize

source§

fn shl_assign(&mut self, other: i64)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<i8> for usize

source§

fn shl_assign(&mut self, other: i8)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<isize> for usize

source§

fn shl_assign(&mut self, other: isize)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<u128> for usize

source§

fn shl_assign(&mut self, other: u128)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<u16> for usize

source§

fn shl_assign(&mut self, other: u16)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<u32> for usize

source§

fn shl_assign(&mut self, other: u32)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<u64> for usize

source§

fn shl_assign(&mut self, other: u64)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign<u8> for usize

source§

fn shl_assign(&mut self, other: u8)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShlAssign for usize

source§

fn shl_assign(&mut self, other: usize)

Performs the <<= operation. Read more
","ShlAssign","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&i128> for usize

§

type Output = <usize as Shr<i128>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i128) -> <usize as Shr<i128>>::Output

Performs the >> operation. Read more
","Shr<&i128>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&i16> for usize

§

type Output = <usize as Shr<i16>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i16) -> <usize as Shr<i16>>::Output

Performs the >> operation. Read more
","Shr<&i16>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&i32> for usize

§

type Output = <usize as Shr<i32>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i32) -> <usize as Shr<i32>>::Output

Performs the >> operation. Read more
","Shr<&i32>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&i64> for usize

§

type Output = <usize as Shr<i64>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i64) -> <usize as Shr<i64>>::Output

Performs the >> operation. Read more
","Shr<&i64>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&i8> for usize

§

type Output = <usize as Shr<i8>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i8) -> <usize as Shr<i8>>::Output

Performs the >> operation. Read more
","Shr<&i8>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&isize> for usize

§

type Output = <usize as Shr<isize>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &isize) -> <usize as Shr<isize>>::Output

Performs the >> operation. Read more
","Shr<&isize>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&u128> for usize

§

type Output = <usize as Shr<u128>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u128) -> <usize as Shr<u128>>::Output

Performs the >> operation. Read more
","Shr<&u128>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&u16> for usize

§

type Output = <usize as Shr<u16>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u16) -> <usize as Shr<u16>>::Output

Performs the >> operation. Read more
","Shr<&u16>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&u32> for usize

§

type Output = <usize as Shr<u32>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u32) -> <usize as Shr<u32>>::Output

Performs the >> operation. Read more
","Shr<&u32>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&u64> for usize

§

type Output = <usize as Shr<u64>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u64) -> <usize as Shr<u64>>::Output

Performs the >> operation. Read more
","Shr<&u64>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&u8> for usize

§

type Output = <usize as Shr<u8>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u8) -> <usize as Shr<u8>>::Output

Performs the >> operation. Read more
","Shr<&u8>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<&usize> for usize

§

type Output = <usize as Shr>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &usize) -> <usize as Shr>::Output

Performs the >> operation. Read more
","Shr<&usize>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<i128> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i128) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<i16> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i16) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<i32> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i32) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<i64> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i64) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<i8> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i8) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<isize> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: isize) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<u128> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u128) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<u16> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u16) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<u32> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u32) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<u64> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u64) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr<u8> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u8) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Shr for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: usize) -> usize

Performs the >> operation. Read more
","Shr","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&i128> for usize

source§

fn shr_assign(&mut self, other: &i128)

Performs the >>= operation. Read more
","ShrAssign<&i128>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&i16> for usize

source§

fn shr_assign(&mut self, other: &i16)

Performs the >>= operation. Read more
","ShrAssign<&i16>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&i32> for usize

source§

fn shr_assign(&mut self, other: &i32)

Performs the >>= operation. Read more
","ShrAssign<&i32>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&i64> for usize

source§

fn shr_assign(&mut self, other: &i64)

Performs the >>= operation. Read more
","ShrAssign<&i64>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&i8> for usize

source§

fn shr_assign(&mut self, other: &i8)

Performs the >>= operation. Read more
","ShrAssign<&i8>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&isize> for usize

source§

fn shr_assign(&mut self, other: &isize)

Performs the >>= operation. Read more
","ShrAssign<&isize>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&u128> for usize

source§

fn shr_assign(&mut self, other: &u128)

Performs the >>= operation. Read more
","ShrAssign<&u128>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&u16> for usize

source§

fn shr_assign(&mut self, other: &u16)

Performs the >>= operation. Read more
","ShrAssign<&u16>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&u32> for usize

source§

fn shr_assign(&mut self, other: &u32)

Performs the >>= operation. Read more
","ShrAssign<&u32>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&u64> for usize

source§

fn shr_assign(&mut self, other: &u64)

Performs the >>= operation. Read more
","ShrAssign<&u64>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&u8> for usize

source§

fn shr_assign(&mut self, other: &u8)

Performs the >>= operation. Read more
","ShrAssign<&u8>","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl ShrAssign<&usize> for usize

source§

fn shr_assign(&mut self, other: &usize)

Performs the >>= operation. Read more
","ShrAssign<&usize>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<i128> for usize

source§

fn shr_assign(&mut self, other: i128)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<i16> for usize

source§

fn shr_assign(&mut self, other: i16)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<i32> for usize

source§

fn shr_assign(&mut self, other: i32)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<i64> for usize

source§

fn shr_assign(&mut self, other: i64)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<i8> for usize

source§

fn shr_assign(&mut self, other: i8)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<isize> for usize

source§

fn shr_assign(&mut self, other: isize)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<u128> for usize

source§

fn shr_assign(&mut self, other: u128)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<u16> for usize

source§

fn shr_assign(&mut self, other: u16)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<u32> for usize

source§

fn shr_assign(&mut self, other: u32)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<u64> for usize

source§

fn shr_assign(&mut self, other: u64)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign<u8> for usize

source§

fn shr_assign(&mut self, other: u8)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl ShrAssign for usize

source§

fn shr_assign(&mut self, other: usize)

Performs the >>= operation. Read more
","ShrAssign","gosling::context::HandshakeHandle"],["
source§

impl SimdElement for usize

§

type Mask = isize

🔬This is a nightly-only experimental API. (portable_simd)
The mask element type corresponding to this element type.
","SimdElement","gosling::context::HandshakeHandle"],["
1.15.0 (const: unstable) · source§

impl<T> SliceIndex<[T]> for usize

The methods index and index_mut panic if the index is out of bounds.

\n
§

type Output = T

The output type returned by methods.
source§

fn get(self, slice: &[T]) -> Option<&T>

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a shared reference to the output at this location, if in\nbounds.
source§

fn get_mut(self, slice: &mut [T]) -> Option<&mut T>

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable reference to the output at this location, if in\nbounds.
source§

unsafe fn get_unchecked(self, slice: *const [T]) -> *const T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a pointer to the output at this location, without\nperforming any bounds checking.\nCalling this method with an out-of-bounds index or a dangling slice pointer\nis undefined behavior even if the resulting pointer is not used.
source§

unsafe fn get_unchecked_mut(self, slice: *mut [T]) -> *mut T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable pointer to the output at this location, without\nperforming any bounds checking.\nCalling this method with an out-of-bounds index or a dangling slice pointer\nis undefined behavior even if the resulting pointer is not used.
source§

fn index(self, slice: &[T]) -> &T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a shared reference to the output at this location, panicking\nif out of bounds.
source§

fn index_mut(self, slice: &mut [T]) -> &mut T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable reference to the output at this location, panicking\nif out of bounds.
","SliceIndex<[T]>","gosling::context::HandshakeHandle"],["
§

impl SmartDisplay for usize

§

type Metadata = ()

User-provided metadata type.
§

fn metadata(&self, f: FormatterOptions) -> Metadata<'_, usize>

Compute any information needed to format the value. This must, at a minimum, determine the\nwidth of the value before any padding is added by the formatter. Read more
§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Format the value using the given formatter. This is the same as Display::fmt. Read more
§

fn fmt_with_metadata(\n &self,\n f: &mut Formatter<'_>,\n _metadata: Metadata<'_, Self>,\n) -> Result<(), Error>

Format the value using the given formatter and metadata. The formatted output should have\nthe width indicated by the metadata. This is before any padding is added by the\nformatter. Read more
","SmartDisplay","gosling::context::HandshakeHandle"],["
source§

impl Step for usize

source§

fn forward(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

fn backward(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
source§

unsafe fn forward_unchecked(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

unsafe fn backward_unchecked(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
source§

fn steps_between(start: &usize, end: &usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the number of successor steps required to get from start to end. Read more
source§

fn forward_checked(start: usize, n: usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

fn backward_checked(start: usize, n: usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
","Step","gosling::context::HandshakeHandle"],["
source§

impl<'a> Sub<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the - operator.
source§

fn sub(self, other: &BigInt) -> BigInt

Performs the - operation. Read more
","Sub<&'a BigInt>","gosling::context::HandshakeHandle"],["
source§

impl<'a> Sub<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the - operator.
source§

fn sub(self, other: &BigUint) -> BigUint

Performs the - operation. Read more
","Sub<&'a BigUint>","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Sub<&usize> for usize

§

type Output = <usize as Sub>::Output

The resulting type after applying the - operator.
source§

fn sub(self, other: &usize) -> <usize as Sub>::Output

Performs the - operation. Read more
","Sub<&usize>","gosling::context::HandshakeHandle"],["
source§

impl Sub<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the - operator.
source§

fn sub(self, other: BigInt) -> BigInt

Performs the - operation. Read more
","Sub","gosling::context::HandshakeHandle"],["
source§

impl Sub<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the - operator.
source§

fn sub(self, other: BigUint) -> BigUint

Performs the - operation. Read more
","Sub","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Sub for usize

§

type Output = usize

The resulting type after applying the - operator.
source§

fn sub(self, other: usize) -> usize

Performs the - operation. Read more
","Sub","gosling::context::HandshakeHandle"],["
1.22.0 · source§

impl SubAssign<&usize> for usize

source§

fn sub_assign(&mut self, other: &usize)

Performs the -= operation. Read more
","SubAssign<&usize>","gosling::context::HandshakeHandle"],["
1.8.0 · source§

impl SubAssign for usize

source§

fn sub_assign(&mut self, other: usize)

Performs the -= operation. Read more
","SubAssign","gosling::context::HandshakeHandle"],["
1.12.0 · source§

impl<'a> Sum<&'a usize> for usize

source§

fn sum<I>(iter: I) -> usize
where\n I: Iterator<Item = &'a usize>,

Method which takes an iterator and generates Self from the elements by\n“summing up” the items.
","Sum<&'a usize>","gosling::context::HandshakeHandle"],["
1.12.0 · source§

impl Sum for usize

source§

fn sum<I>(iter: I) -> usize
where\n I: Iterator<Item = usize>,

Method which takes an iterator and generates Self from the elements by\n“summing up” the items.
","Sum","gosling::context::HandshakeHandle"],["
source§

impl ToBigInt for usize

source§

fn to_bigint(&self) -> Option<BigInt>

Converts the value of self to a BigInt.
","ToBigInt","gosling::context::HandshakeHandle"],["
source§

impl ToBigUint for usize

source§

fn to_biguint(&self) -> Option<BigUint>

Converts the value of self to a BigUint.
","ToBigUint","gosling::context::HandshakeHandle"],["
source§

impl ToBytes for usize

§

type Bytes = [u8; 8]

source§

fn to_be_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in big-endian byte order. Read more
source§

fn to_le_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in little-endian byte order. Read more
source§

fn to_ne_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in native byte order. Read more
","ToBytes","gosling::context::HandshakeHandle"],["
source§

impl ToPrimitive for usize

source§

fn to_isize(&self) -> Option<isize>

Converts the value of self to an isize. If the value cannot be\nrepresented by an isize, then None is returned.
source§

fn to_i8(&self) -> Option<i8>

Converts the value of self to an i8. If the value cannot be\nrepresented by an i8, then None is returned.
source§

fn to_i16(&self) -> Option<i16>

Converts the value of self to an i16. If the value cannot be\nrepresented by an i16, then None is returned.
source§

fn to_i32(&self) -> Option<i32>

Converts the value of self to an i32. If the value cannot be\nrepresented by an i32, then None is returned.
source§

fn to_i64(&self) -> Option<i64>

Converts the value of self to an i64. If the value cannot be\nrepresented by an i64, then None is returned.
source§

fn to_i128(&self) -> Option<i128>

Converts the value of self to an i128. If the value cannot be\nrepresented by an i128 (i64 under the default implementation), then\nNone is returned. Read more
source§

fn to_usize(&self) -> Option<usize>

Converts the value of self to a usize. If the value cannot be\nrepresented by a usize, then None is returned.
source§

fn to_u8(&self) -> Option<u8>

Converts the value of self to a u8. If the value cannot be\nrepresented by a u8, then None is returned.
source§

fn to_u16(&self) -> Option<u16>

Converts the value of self to a u16. If the value cannot be\nrepresented by a u16, then None is returned.
source§

fn to_u32(&self) -> Option<u32>

Converts the value of self to a u32. If the value cannot be\nrepresented by a u32, then None is returned.
source§

fn to_u64(&self) -> Option<u64>

Converts the value of self to a u64. If the value cannot be\nrepresented by a u64, then None is returned.
source§

fn to_u128(&self) -> Option<u128>

Converts the value of self to a u128. If the value cannot be\nrepresented by a u128 (u64 under the default implementation), then\nNone is returned. Read more
source§

fn to_f32(&self) -> Option<f32>

Converts the value of self to an f32. Overflows may map to positive\nor negative inifinity, otherwise None is returned if the value cannot\nbe represented by an f32.
source§

fn to_f64(&self) -> Option<f64>

Converts the value of self to an f64. Overflows may map to positive\nor negative inifinity, otherwise None is returned if the value cannot\nbe represented by an f64. Read more
","ToPrimitive","gosling::context::HandshakeHandle"],["
§

impl ToSql for usize

§

fn to_sql(&self) -> Result<ToSqlOutput<'_>, Error>

Converts Rust value to SQLite value
","ToSql","gosling::context::HandshakeHandle"],["
§

impl ToUsize for usize

§

fn to_usize(&self) -> usize

converts self to usize
","ToUsize","gosling::context::HandshakeHandle"],["
§

impl ToUsize for usize

§

fn to_usize(&self) -> usize

converts self to usize
","ToUsize","gosling::context::HandshakeHandle"],["
§

impl<const L: i32, const H: i32> TryFrom<BoundedInt32<L, H>> for usize

§

type Error = Error

The type returned in the event of a conversion error.
§

fn try_from(\n val: BoundedInt32<L, H>,\n) -> Result<usize, <usize as TryFrom<BoundedInt32<L, H>>>::Error>

Performs the conversion.
","TryFrom>","gosling::context::HandshakeHandle"],["
§

impl TryFrom<Length> for usize

§

type Error = Error

The type returned in the event of a conversion error.
§

fn try_from(len: Length) -> Result<usize, Error>

Performs the conversion.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<i128> for usize

source§

fn try_from(u: i128) -> Result<usize, <usize as TryFrom<i128>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<i16> for usize

source§

fn try_from(u: i16) -> Result<usize, <usize as TryFrom<i16>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<i32> for usize

source§

fn try_from(u: i32) -> Result<usize, <usize as TryFrom<i32>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<i64> for usize

source§

fn try_from(u: i64) -> Result<usize, <usize as TryFrom<i64>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<i8> for usize

source§

fn try_from(u: i8) -> Result<usize, <usize as TryFrom<i8>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<isize> for usize

source§

fn try_from(u: isize) -> Result<usize, <usize as TryFrom<isize>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<u128> for usize

source§

fn try_from(u: u128) -> Result<usize, <usize as TryFrom<u128>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<u32> for usize

source§

fn try_from(value: u32) -> Result<usize, <usize as TryFrom<u32>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
1.34.0 · source§

impl TryFrom<u64> for usize

source§

fn try_from(value: u64) -> Result<usize, <usize as TryFrom<u64>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","gosling::context::HandshakeHandle"],["
§

impl Unsigned for usize

§

fn is_power_of_two(self) -> bool

Returns true if and only if self == 2^k for some k.
§

fn next_power_of_two(self) -> usize

Returns the smallest power of two greater than or equal to self. Read more
§

fn checked_next_power_of_two(self) -> Option<usize>

Returns the smallest power of two greater than or equal to n. If the\nnext power of two is greater than the type’s maximum value, None is\nreturned, otherwise the power of two is wrapped in Some.
","Unsigned","gosling::context::HandshakeHandle"],["
1.42.0 · source§

impl UpperExp for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","UpperExp","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl UpperHex for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","UpperHex","gosling::context::HandshakeHandle"],["
§

impl Value for usize

§

fn record(&self, key: &Field, visitor: &mut dyn Visit)

Visits this value with the given Visitor.
","Value","gosling::context::HandshakeHandle"],["
source§

impl WrappingAdd for usize

source§

fn wrapping_add(&self, v: &usize) -> usize

Wrapping (modular) addition. Computes self + other, wrapping around at the boundary of\nthe type.
","WrappingAdd","gosling::context::HandshakeHandle"],["
source§

impl WrappingMul for usize

source§

fn wrapping_mul(&self, v: &usize) -> usize

Wrapping (modular) multiplication. Computes self * other, wrapping around at the boundary\nof the type.
","WrappingMul","gosling::context::HandshakeHandle"],["
source§

impl WrappingNeg for usize

source§

fn wrapping_neg(&self) -> usize

Wrapping (modular) negation. Computes -self,\nwrapping around at the boundary of the type. Read more
","WrappingNeg","gosling::context::HandshakeHandle"],["
source§

impl WrappingShl for usize

source§

fn wrapping_shl(&self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs),\nwhere mask removes any high order bits of rhs that would\ncause the shift to exceed the bitwidth of the type. Read more
","WrappingShl","gosling::context::HandshakeHandle"],["
source§

impl WrappingShr for usize

source§

fn wrapping_shr(&self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs),\nwhere mask removes any high order bits of rhs that would\ncause the shift to exceed the bitwidth of the type. Read more
","WrappingShr","gosling::context::HandshakeHandle"],["
source§

impl WrappingSub for usize

source§

fn wrapping_sub(&self, v: &usize) -> usize

Wrapping (modular) subtraction. Computes self - other, wrapping around at the boundary\nof the type.
","WrappingSub","gosling::context::HandshakeHandle"],["
§

impl WriteHex for usize

§

fn write_hex<W>(&self, writer: W) -> Result<(), Error>
where\n W: Write,

Write the value as hex.
","WriteHex","gosling::context::HandshakeHandle"],["
§

impl Writeable for usize

§

fn write_to<W>(&self, sink: &mut W) -> Result<(), Error>
where\n W: Write + ?Sized,

Writes a string to the given sink. Errors from the sink are bubbled up.\nThe default implementation delegates to write_to_parts, and discards any\nPart annotations.
§

fn writeable_length_hint(&self) -> LengthHint

Returns a hint for the number of UTF-8 bytes that will be written to the sink. Read more
§

fn write_to_parts<S>(&self, sink: &mut S) -> Result<(), Error>
where\n S: PartsWrite + ?Sized,

Write bytes and Part annotations to the given sink. Errors from the\nsink are bubbled up. The default implementation delegates to write_to,\nand doesn’t produce any Part annotations.
§

fn write_to_string(&self) -> Cow<'_, str>

Creates a new String with the data from this Writeable. Like ToString,\nbut smaller and faster. Read more
§

fn writeable_cmp_bytes(&self, other: &[u8]) -> Ordering

Compares the contents of this Writeable to the given bytes\nwithout allocating a String to hold the Writeable contents. Read more
","Writeable","gosling::context::HandshakeHandle"],["
§

impl<'a> Yokeable<'a> for usize

§

type Output = usize

This type MUST be Self with the 'static replaced with 'a, i.e. Self<'a>
§

fn transform(&self) -> &<usize as Yokeable<'a>>::Output

This method must cast self between &'a Self<'static> and &'a Self<'a>. Read more
§

fn transform_owned(self) -> <usize as Yokeable<'a>>::Output

This method must cast self between Self<'static> and Self<'a>. Read more
§

unsafe fn make(this: <usize as Yokeable<'a>>::Output) -> usize

This method can be used to cast away Self<'a>’s lifetime. Read more
§

fn transform_mut<F>(&'a mut self, f: F)
where\n F: 'static + for<'b> FnOnce(&'b mut <usize as Yokeable<'a>>::Output),

This method must cast self between &'a mut Self<'static> and &'a mut Self<'a>,\nand pass it to f. Read more
","Yokeable<'a>","gosling::context::HandshakeHandle"],["
source§

impl Zero for usize

source§

fn zero() -> usize

Returns the additive identity element of Self, 0. Read more
source§

fn is_zero(&self) -> bool

Returns true if self is equal to the additive identity.
source§

fn set_zero(&mut self)

Sets self to the additive identity element of Self, 0.
","Zero","gosling::context::HandshakeHandle"],["
§

impl<'a> ZeroFrom<'a, usize> for usize

§

fn zero_from(this: &'a usize) -> usize

Clone the other C into a struct that may retain references into C.
","ZeroFrom<'a, usize>","gosling::context::HandshakeHandle"],["
§

impl<'a> ZeroMapKV<'a> for usize

§

type Container = FlexZeroVec<'a>

The container that can be used with this type: [ZeroVec] or [VarZeroVec].
§

type Slice = FlexZeroSlice

§

type GetType = [u8]

The type produced by Container::get() Read more
§

type OwnedType = usize

The type produced by Container::replace() and Container::remove(),\nalso used during deserialization. If Self is human readable serialized,\ndeserializing to Self::OwnedType should produce the same value once\npassed through Self::owned_as_self() Read more
","ZeroMapKV<'a>","gosling::context::HandshakeHandle"],["
source§

impl usize

1.43.0 · source

pub const MIN: usize = 0usize

The smallest value that can be represented by this integer type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MIN, 0);
\n
1.43.0 · source

pub const MAX: usize = 18_446_744_073_709_551_615usize

The largest value that can be represented by this integer type\n(264 − 1 on 64-bit targets).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MAX, 18446744073709551615);
\n
1.53.0 · source

pub const BITS: u32 = 64u32

The size of this integer type in bits.

\n
§Examples
\n
assert_eq!(usize::BITS, 64);
\n
1.0.0 (const: 1.32.0) · source

pub const fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b01001100usize;\n\nassert_eq!(n.count_ones(), 3);
\n
1.0.0 (const: 1.32.0) · source

pub const fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MAX.count_zeros(), 0);
\n
1.0.0 (const: 1.32.0) · source

pub const fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of self.

\n

Depending on what you’re doing with the value, you might also be interested in the\nilog2 function which returns a consistent number, even if the type widens.

\n
§Examples
\n

Basic usage:

\n\n
let n = usize::MAX >> 2;\n\nassert_eq!(n.leading_zeros(), 2);
\n
1.0.0 (const: 1.32.0) · source

pub const fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation\nof self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b0101000usize;\n\nassert_eq!(n.trailing_zeros(), 3);
\n
1.46.0 (const: 1.46.0) · source

pub const fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
let n = !(usize::MAX >> 2);\n\nassert_eq!(n.leading_ones(), 2);
\n
1.46.0 (const: 1.46.0) · source

pub const fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation\nof self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b1010111usize;\n\nassert_eq!(n.trailing_ones(), 3);
\n
source

pub const fn cast_signed(self) -> isize

🔬This is a nightly-only experimental API. (integer_sign_cast)

Returns the bit pattern of self reinterpreted as a signed integer of the same size.

\n

This produces the same result as an as cast, but ensures that the bit-width remains\nthe same.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(integer_sign_cast)]\n\nlet n = usize::MAX;\n\nassert_eq!(n.cast_signed(), -1isize);
\n
1.0.0 (const: 1.32.0) · source

pub const fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n,\nwrapping the truncated bits to the end of the resulting integer.

\n

Please note this isn’t the same operation as the << shifting operator!

\n
§Examples
\n

Basic usage:

\n\n
let n = 0xaa00000000006e1usize;\nlet m = 0x6e10aa;\n\nassert_eq!(n.rotate_left(12), m);
\n
1.0.0 (const: 1.32.0) · source

pub const fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n,\nwrapping the truncated bits to the beginning of the resulting\ninteger.

\n

Please note this isn’t the same operation as the >> shifting operator!

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x6e10aausize;\nlet m = 0xaa00000000006e1;\n\nassert_eq!(n.rotate_right(12), m);
\n
1.0.0 (const: 1.32.0) · source

pub const fn swap_bytes(self) -> usize

Reverses the byte order of the integer.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1234567890123456usize;\nlet m = n.swap_bytes();\n\nassert_eq!(m, 0x5634129078563412);
\n
1.37.0 (const: 1.37.0) · source

pub const fn reverse_bits(self) -> usize

Reverses the order of bits in the integer. The least significant bit becomes the most significant bit,\nsecond least-significant bit becomes second most-significant bit, etc.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1234567890123456usize;\nlet m = n.reverse_bits();\n\nassert_eq!(m, 0x6a2c48091e6a2c48);\nassert_eq!(0, 0usize.reverse_bits());
\n
1.0.0 (const: 1.32.0) · source

pub const fn from_be(x: usize) -> usize

Converts an integer from big endian to the target’s endianness.

\n

On big endian this is a no-op. On little endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"big\") {\n    assert_eq!(usize::from_be(n), n)\n} else {\n    assert_eq!(usize::from_be(n), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn from_le(x: usize) -> usize

Converts an integer from little endian to the target’s endianness.

\n

On little endian this is a no-op. On big endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"little\") {\n    assert_eq!(usize::from_le(n), n)\n} else {\n    assert_eq!(usize::from_le(n), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn to_be(self) -> usize

Converts self to big endian from the target’s endianness.

\n

On big endian this is a no-op. On little endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"big\") {\n    assert_eq!(n.to_be(), n)\n} else {\n    assert_eq!(n.to_be(), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn to_le(self) -> usize

Converts self to little endian from the target’s endianness.

\n

On little endian this is a no-op. On big endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"little\") {\n    assert_eq!(n.to_le(), n)\n} else {\n    assert_eq!(n.to_le(), n.swap_bytes())\n}
\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_add(self, rhs: usize) -> Option<usize>

Checked integer addition. Computes self + rhs, returning None\nif overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!((usize::MAX - 2).checked_add(1), Some(usize::MAX - 1));\nassert_eq!((usize::MAX - 2).checked_add(3), None);
\n
source

pub const fn strict_add(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer addition. Computes self + rhs, panicking\nif overflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!((usize::MAX - 2).strict_add(1), usize::MAX - 1);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (usize::MAX - 2).strict_add(3);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_add(self, rhs: usize) -> usize

Unchecked integer addition. Computes self + rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_add(y) is semantically equivalent to calling\nx.checked_add(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_add.

\n
§Safety
\n

This results in undefined behavior when\nself + rhs > usize::MAX or self + rhs < usize::MIN,\ni.e. when checked_add would return None.

\n
1.66.0 (const: 1.66.0) · source

pub const fn checked_add_signed(self, rhs: isize) -> Option<usize>

Checked addition with a signed integer. Computes self + rhs,\nreturning None if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.checked_add_signed(2), Some(3));\nassert_eq!(1usize.checked_add_signed(-2), None);\nassert_eq!((usize::MAX - 2).checked_add_signed(3), None);
\n
source

pub const fn strict_add_signed(self, rhs: isize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict addition with a signed integer. Computes self + rhs,\npanicking if overflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(1usize.strict_add_signed(2), 3);
\n

The following panic because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 1usize.strict_add_signed(-2);
\n\n
#![feature(strict_overflow_ops)]\nlet _ = (usize::MAX - 2).strict_add_signed(3);
\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_sub(self, rhs: usize) -> Option<usize>

Checked integer subtraction. Computes self - rhs, returning\nNone if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.checked_sub(1), Some(0));\nassert_eq!(0usize.checked_sub(1), None);
\n
source

pub const fn strict_sub(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer subtraction. Computes self - rhs, panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(1usize.strict_sub(1), 0);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0usize.strict_sub(1);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_sub(self, rhs: usize) -> usize

Unchecked integer subtraction. Computes self - rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_sub(y) is semantically equivalent to calling\nx.checked_sub(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_sub.

\n

If you find yourself writing code like this:

\n\n
if foo >= bar {\n    // SAFETY: just checked it will not overflow\n    let diff = unsafe { foo.unchecked_sub(bar) };\n    // ... use diff ...\n}
\n

Consider changing it to

\n\n
if let Some(diff) = foo.checked_sub(bar) {\n    // ... use diff ...\n}
\n

As that does exactly the same thing – including telling the optimizer\nthat the subtraction cannot overflow – but avoids needing unsafe.

\n
§Safety
\n

This results in undefined behavior when\nself - rhs > usize::MAX or self - rhs < usize::MIN,\ni.e. when checked_sub would return None.

\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_mul(self, rhs: usize) -> Option<usize>

Checked integer multiplication. Computes self * rhs, returning\nNone if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_mul(1), Some(5));\nassert_eq!(usize::MAX.checked_mul(2), None);
\n
source

pub const fn strict_mul(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer multiplication. Computes self * rhs, panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(5usize.strict_mul(1), 5);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = usize::MAX.strict_mul(2);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_mul(self, rhs: usize) -> usize

Unchecked integer multiplication. Computes self * rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_mul(y) is semantically equivalent to calling\nx.checked_mul(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_mul.

\n
§Safety
\n

This results in undefined behavior when\nself * rhs > usize::MAX or self * rhs < usize::MIN,\ni.e. when checked_mul would return None.

\n
1.0.0 (const: 1.52.0) · source

pub const fn checked_div(self, rhs: usize) -> Option<usize>

Checked integer division. Computes self / rhs, returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.checked_div(2), Some(64));\nassert_eq!(1usize.checked_div(0), None);
\n
source

pub const fn strict_div(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer division. Computes self / rhs.\nStrict division on unsigned types is just normal division.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_div(10), 10);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (1usize).strict_div(0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn checked_div_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean division. Computes self.div_euclid(rhs), returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.checked_div_euclid(2), Some(64));\nassert_eq!(1usize.checked_div_euclid(0), None);
\n
source

pub const fn strict_div_euclid(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict Euclidean division. Computes self.div_euclid(rhs).\nStrict division on unsigned types is just normal division.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.strict_div(rhs).

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_div_euclid(10), 10);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (1usize).strict_div_euclid(0);
\n
1.7.0 (const: 1.52.0) · source

pub const fn checked_rem(self, rhs: usize) -> Option<usize>

Checked integer remainder. Computes self % rhs, returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_rem(2), Some(1));\nassert_eq!(5usize.checked_rem(0), None);
\n
source

pub const fn strict_rem(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer remainder. Computes self % rhs.\nStrict remainder calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_rem(10), 0);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 5usize.strict_rem(0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn checked_rem_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean modulo. Computes self.rem_euclid(rhs), returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_rem_euclid(2), Some(1));\nassert_eq!(5usize.checked_rem_euclid(0), None);
\n
source

pub const fn strict_rem_euclid(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict Euclidean modulo. Computes self.rem_euclid(rhs).\nStrict modulo calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.strict_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_rem_euclid(10), 0);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 5usize.strict_rem_euclid(0);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog(self, base: usize) -> u32

Returns the logarithm of the number with respect to an arbitrary base,\nrounded down.

\n

This method might not be optimized owing to implementation details;\nilog2 can produce results more efficiently for base 2, and ilog10\ncan produce results more efficiently for base 10.

\n
§Panics
\n

This function will panic if self is zero, or if base is less than 2.

\n
§Examples
\n
assert_eq!(5usize.ilog(5), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog2(self) -> u32

Returns the base 2 logarithm of the number, rounded down.

\n
§Panics
\n

This function will panic if self is zero.

\n
§Examples
\n
assert_eq!(2usize.ilog2(), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog10(self) -> u32

Returns the base 10 logarithm of the number, rounded down.

\n
§Panics
\n

This function will panic if self is zero.

\n
§Example
\n
assert_eq!(10usize.ilog10(), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog(self, base: usize) -> Option<u32>

Returns the logarithm of the number with respect to an arbitrary base,\nrounded down.

\n

Returns None if the number is zero, or if the base is not at least 2.

\n

This method might not be optimized owing to implementation details;\nchecked_ilog2 can produce results more efficiently for base 2, and\nchecked_ilog10 can produce results more efficiently for base 10.

\n
§Examples
\n
assert_eq!(5usize.checked_ilog(5), Some(1));
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog2(self) -> Option<u32>

Returns the base 2 logarithm of the number, rounded down.

\n

Returns None if the number is zero.

\n
§Examples
\n
assert_eq!(2usize.checked_ilog2(), Some(1));
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog10(self) -> Option<u32>

Returns the base 10 logarithm of the number, rounded down.

\n

Returns None if the number is zero.

\n
§Examples
\n
assert_eq!(10usize.checked_ilog10(), Some(1));
\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_neg(self) -> Option<usize>

Checked negation. Computes -self, returning None unless self == 0.

\n

Note that negating any positive integer will overflow.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0usize.checked_neg(), Some(0));\nassert_eq!(1usize.checked_neg(), None);
\n
source

pub const fn strict_neg(self) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict negation. Computes -self, panicking unless self == 0.

\n

Note that negating any positive integer will overflow.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0usize.strict_neg(), 0);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 1usize.strict_neg();
\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_shl(self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None\nif rhs is larger than or equal to the number of bits in self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0x1usize.checked_shl(4), Some(0x10));\nassert_eq!(0x10usize.checked_shl(129), None);
\n
source

pub const fn strict_shl(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict shift left. Computes self << rhs, panicking if rhs is larger\nthan or equal to the number of bits in self.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0x1usize.strict_shl(4), 0x10);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0x10usize.strict_shl(129);
\n
source

pub const unsafe fn unchecked_shl(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (unchecked_shifts)

Unchecked shift left. Computes self << rhs, assuming that\nrhs is less than the number of bits in self.

\n
§Safety
\n

This results in undefined behavior if rhs is larger than\nor equal to the number of bits in self,\ni.e. when checked_shl would return None.

\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_shr(self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None\nif rhs is larger than or equal to the number of bits in self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0x10usize.checked_shr(4), Some(0x1));\nassert_eq!(0x10usize.checked_shr(129), None);
\n
source

pub const fn strict_shr(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict shift right. Computes self >> rhs, panicking rhs is\nlarger than or equal to the number of bits in self.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0x10usize.strict_shr(4), 0x1);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0x10usize.strict_shr(129);
\n
source

pub const unsafe fn unchecked_shr(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (unchecked_shifts)

Unchecked shift right. Computes self >> rhs, assuming that\nrhs is less than the number of bits in self.

\n
§Safety
\n

This results in undefined behavior if rhs is larger than\nor equal to the number of bits in self,\ni.e. when checked_shr would return None.

\n
1.34.0 (const: 1.50.0) · source

pub const fn checked_pow(self, exp: u32) -> Option<usize>

Checked exponentiation. Computes self.pow(exp), returning None if\noverflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.checked_pow(5), Some(32));\nassert_eq!(usize::MAX.checked_pow(2), None);
\n
source

pub const fn strict_pow(self, exp: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict exponentiation. Computes self.pow(exp), panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(2usize.strict_pow(5), 32);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = usize::MAX.strict_pow(2);
\n
1.0.0 (const: 1.47.0) · source

pub const fn saturating_add(self, rhs: usize) -> usize

Saturating integer addition. Computes self + rhs, saturating at\nthe numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.saturating_add(1), 101);\nassert_eq!(usize::MAX.saturating_add(127), usize::MAX);
\n
1.66.0 (const: 1.66.0) · source

pub const fn saturating_add_signed(self, rhs: isize) -> usize

Saturating addition with a signed integer. Computes self + rhs,\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.saturating_add_signed(2), 3);\nassert_eq!(1usize.saturating_add_signed(-2), 0);\nassert_eq!((usize::MAX - 2).saturating_add_signed(4), usize::MAX);
\n
1.0.0 (const: 1.47.0) · source

pub const fn saturating_sub(self, rhs: usize) -> usize

Saturating integer subtraction. Computes self - rhs, saturating\nat the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.saturating_sub(27), 73);\nassert_eq!(13usize.saturating_sub(127), 0);
\n
1.7.0 (const: 1.47.0) · source

pub const fn saturating_mul(self, rhs: usize) -> usize

Saturating integer multiplication. Computes self * rhs,\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.saturating_mul(10), 20);\nassert_eq!((usize::MAX).saturating_mul(10), usize::MAX);
\n
1.58.0 (const: 1.58.0) · source

pub const fn saturating_div(self, rhs: usize) -> usize

Saturating integer division. Computes self / rhs, saturating at the\nnumeric bounds instead of overflowing.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.saturating_div(2), 2);\n
\n
1.34.0 (const: 1.50.0) · source

pub const fn saturating_pow(self, exp: u32) -> usize

Saturating integer exponentiation. Computes self.pow(exp),\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(4usize.saturating_pow(3), 64);\nassert_eq!(usize::MAX.saturating_pow(2), usize::MAX);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_add(self, rhs: usize) -> usize

Wrapping (modular) addition. Computes self + rhs,\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(200usize.wrapping_add(55), 255);\nassert_eq!(200usize.wrapping_add(usize::MAX), 199);
\n
1.66.0 (const: 1.66.0) · source

pub const fn wrapping_add_signed(self, rhs: isize) -> usize

Wrapping (modular) addition with a signed integer. Computes\nself + rhs, wrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.wrapping_add_signed(2), 3);\nassert_eq!(1usize.wrapping_add_signed(-2), usize::MAX);\nassert_eq!((usize::MAX - 2).wrapping_add_signed(4), 1);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_sub(self, rhs: usize) -> usize

Wrapping (modular) subtraction. Computes self - rhs,\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_sub(100), 0);\nassert_eq!(100usize.wrapping_sub(usize::MAX), 101);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_mul(self, rhs: usize) -> usize

Wrapping (modular) multiplication. Computes self * rhs, wrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u8 is used here.

\n\n
assert_eq!(10u8.wrapping_mul(12), 120);\nassert_eq!(25u8.wrapping_mul(12), 44);
\n
1.2.0 (const: 1.52.0) · source

pub const fn wrapping_div(self, rhs: usize) -> usize

Wrapping (modular) division. Computes self / rhs.\nWrapped division on unsigned types is just normal division.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_div(10), 10);
\n
1.38.0 (const: 1.52.0) · source

pub const fn wrapping_div_euclid(self, rhs: usize) -> usize

Wrapping Euclidean division. Computes self.div_euclid(rhs).\nWrapped division on unsigned types is just normal division.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.wrapping_div(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_div_euclid(10), 10);
\n
1.2.0 (const: 1.52.0) · source

pub const fn wrapping_rem(self, rhs: usize) -> usize

Wrapping (modular) remainder. Computes self % rhs.\nWrapped remainder calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_rem(10), 0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn wrapping_rem_euclid(self, rhs: usize) -> usize

Wrapping Euclidean modulo. Computes self.rem_euclid(rhs).\nWrapped modulo calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.wrapping_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_rem_euclid(10), 0);
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_neg(self) -> usize

Wrapping (modular) negation. Computes -self,\nwrapping around at the boundary of the type.

\n

Since unsigned types do not have negative equivalents\nall applications of this function will wrap (except for -0).\nFor values smaller than the corresponding signed type’s maximum\nthe result is the same as casting the corresponding signed value.\nAny larger values are equivalent to MAX + 1 - (val - MAX - 1) where\nMAX is the corresponding signed type’s maximum.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0_usize.wrapping_neg(), 0);\nassert_eq!(usize::MAX.wrapping_neg(), 1);\nassert_eq!(13_usize.wrapping_neg(), (!13) + 1);\nassert_eq!(42_usize.wrapping_neg(), !(42 - 1));
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_shl(self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs),\nwhere mask removes any high-order bits of rhs that\nwould cause the shift to exceed the bitwidth of the type.

\n

Note that this is not the same as a rotate-left; the\nRHS of a wrapping shift-left is restricted to the range\nof the type, rather than the bits shifted out of the LHS\nbeing returned to the other end. The primitive integer\ntypes all implement a rotate_left function,\nwhich may be what you want instead.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.wrapping_shl(7), 128);\nassert_eq!(1usize.wrapping_shl(128), 1);
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_shr(self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs),\nwhere mask removes any high-order bits of rhs that\nwould cause the shift to exceed the bitwidth of the type.

\n

Note that this is not the same as a rotate-right; the\nRHS of a wrapping shift-right is restricted to the range\nof the type, rather than the bits shifted out of the LHS\nbeing returned to the other end. The primitive integer\ntypes all implement a rotate_right function,\nwhich may be what you want instead.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.wrapping_shr(7), 1);\nassert_eq!(128usize.wrapping_shr(128), 128);
\n
1.34.0 (const: 1.50.0) · source

pub const fn wrapping_pow(self, exp: u32) -> usize

Wrapping (modular) exponentiation. Computes self.pow(exp),\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(3usize.wrapping_pow(5), 243);\nassert_eq!(3u8.wrapping_pow(6), 217);
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_add(self, rhs: usize) -> (usize, bool)

Calculates self + rhs

\n

Returns a tuple of the addition along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_add(2), (7, false));\nassert_eq!(usize::MAX.overflowing_add(1), (0, true));
\n
source

pub const fn carrying_add(self, rhs: usize, carry: bool) -> (usize, bool)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates self + rhs + carry and returns a tuple containing\nthe sum and the output carry.

\n

Performs “ternary addition” of two integer operands and a carry-in\nbit, and returns an output integer and a carry-out bit. This allows\nchaining together multiple additions to create a wider addition, and\ncan be useful for bignum addition.

\n

This can be thought of as a 64-bit “full adder”, in the electronics sense.

\n

If the input carry is false, this method is equivalent to\noverflowing_add, and the output carry is\nequal to the overflow flag. Note that although carry and overflow\nflags are similar for unsigned integers, they are different for\nsigned integers.

\n
§Examples
\n
#![feature(bigint_helper_methods)]\n\n//    3  MAX    (a = 3 × 2^64 + 2^64 - 1)\n// +  5    7    (b = 5 × 2^64 + 7)\n// ---------\n//    9    6    (sum = 9 × 2^64 + 6)\n\nlet (a1, a0): (usize, usize) = (3, usize::MAX);\nlet (b1, b0): (usize, usize) = (5, 7);\nlet carry0 = false;\n\nlet (sum0, carry1) = a0.carrying_add(b0, carry0);\nassert_eq!(carry1, true);\nlet (sum1, carry2) = a1.carrying_add(b1, carry1);\nassert_eq!(carry2, false);\n\nassert_eq!((sum1, sum0), (9, 6));
\n
1.66.0 (const: 1.66.0) · source

pub const fn overflowing_add_signed(self, rhs: isize) -> (usize, bool)

Calculates self + rhs with a signed rhs

\n

Returns a tuple of the addition along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.overflowing_add_signed(2), (3, false));\nassert_eq!(1usize.overflowing_add_signed(-2), (usize::MAX, true));\nassert_eq!((usize::MAX - 2).overflowing_add_signed(4), (1, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_sub(self, rhs: usize) -> (usize, bool)

Calculates self - rhs

\n

Returns a tuple of the subtraction along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_sub(2), (3, false));\nassert_eq!(0usize.overflowing_sub(1), (usize::MAX, true));
\n
source

pub const fn borrowing_sub(self, rhs: usize, borrow: bool) -> (usize, bool)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates selfrhsborrow and returns a tuple\ncontaining the difference and the output borrow.

\n

Performs “ternary subtraction” by subtracting both an integer\noperand and a borrow-in bit from self, and returns an output\ninteger and a borrow-out bit. This allows chaining together multiple\nsubtractions to create a wider subtraction, and can be useful for\nbignum subtraction.

\n
§Examples
\n
#![feature(bigint_helper_methods)]\n\n//    9    6    (a = 9 × 2^64 + 6)\n// -  5    7    (b = 5 × 2^64 + 7)\n// ---------\n//    3  MAX    (diff = 3 × 2^64 + 2^64 - 1)\n\nlet (a1, a0): (usize, usize) = (9, 6);\nlet (b1, b0): (usize, usize) = (5, 7);\nlet borrow0 = false;\n\nlet (diff0, borrow1) = a0.borrowing_sub(b0, borrow0);\nassert_eq!(borrow1, true);\nlet (diff1, borrow2) = a1.borrowing_sub(b1, borrow1);\nassert_eq!(borrow2, false);\n\nassert_eq!((diff1, diff0), (3, usize::MAX));
\n
1.60.0 (const: 1.60.0) · source

pub const fn abs_diff(self, other: usize) -> usize

Computes the absolute difference between self and other.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.abs_diff(80), 20usize);\nassert_eq!(100usize.abs_diff(110), 10usize);
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_mul(self, rhs: usize) -> (usize, bool)

Calculates the multiplication of self and rhs.

\n

Returns a tuple of the multiplication along with a boolean\nindicating whether an arithmetic overflow would occur. If an\noverflow would have occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
assert_eq!(5u32.overflowing_mul(2), (10, false));\nassert_eq!(1_000_000_000u32.overflowing_mul(10), (1410065408, true));
\n
1.7.0 (const: 1.52.0) · source

pub const fn overflowing_div(self, rhs: usize) -> (usize, bool)

Calculates the divisor when self is divided by rhs.

\n

Returns a tuple of the divisor along with a boolean indicating\nwhether an arithmetic overflow would occur. Note that for unsigned\nintegers overflow never occurs, so the second value is always\nfalse.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_div(2), (2, false));
\n
1.38.0 (const: 1.52.0) · source

pub const fn overflowing_div_euclid(self, rhs: usize) -> (usize, bool)

Calculates the quotient of Euclidean division self.div_euclid(rhs).

\n

Returns a tuple of the divisor along with a boolean indicating\nwhether an arithmetic overflow would occur. Note that for unsigned\nintegers overflow never occurs, so the second value is always\nfalse.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.overflowing_div(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_div_euclid(2), (2, false));
\n
1.7.0 (const: 1.52.0) · source

pub const fn overflowing_rem(self, rhs: usize) -> (usize, bool)

Calculates the remainder when self is divided by rhs.

\n

Returns a tuple of the remainder after dividing along with a boolean\nindicating whether an arithmetic overflow would occur. Note that for\nunsigned integers overflow never occurs, so the second value is\nalways false.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_rem(2), (1, false));
\n
1.38.0 (const: 1.52.0) · source

pub const fn overflowing_rem_euclid(self, rhs: usize) -> (usize, bool)

Calculates the remainder self.rem_euclid(rhs) as if by Euclidean division.

\n

Returns a tuple of the modulo after dividing along with a boolean\nindicating whether an arithmetic overflow would occur. Note that for\nunsigned integers overflow never occurs, so the second value is\nalways false.\nSince, for the positive integers, all common\ndefinitions of division are equal, this operation\nis exactly equal to self.overflowing_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_rem_euclid(2), (1, false));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_neg(self) -> (usize, bool)

Negates self in an overflowing fashion.

\n

Returns !self + 1 using wrapping operations to return the value\nthat represents the negation of this unsigned value. Note that for\npositive unsigned values overflow always occurs, but negating 0 does\nnot overflow.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0usize.overflowing_neg(), (0, false));\nassert_eq!(2usize.overflowing_neg(), (-2i32 as usize, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_shl(self, rhs: u32) -> (usize, bool)

Shifts self left by rhs bits.

\n

Returns a tuple of the shifted version of self along with a boolean\nindicating whether the shift value was larger than or equal to the\nnumber of bits. If the shift value is too large, then value is\nmasked (N-1) where N is the number of bits, and this value is then\nused to perform the shift.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0x1usize.overflowing_shl(4), (0x10, false));\nassert_eq!(0x1usize.overflowing_shl(132), (0x10, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_shr(self, rhs: u32) -> (usize, bool)

Shifts self right by rhs bits.

\n

Returns a tuple of the shifted version of self along with a boolean\nindicating whether the shift value was larger than or equal to the\nnumber of bits. If the shift value is too large, then value is\nmasked (N-1) where N is the number of bits, and this value is then\nused to perform the shift.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0x10usize.overflowing_shr(4), (0x1, false));\nassert_eq!(0x10usize.overflowing_shr(132), (0x1, true));
\n
1.34.0 (const: 1.50.0) · source

pub const fn overflowing_pow(self, exp: u32) -> (usize, bool)

Raises self to the power of exp, using exponentiation by squaring.

\n

Returns a tuple of the exponentiation along with a bool indicating\nwhether an overflow happened.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(3usize.overflowing_pow(5), (243, false));\nassert_eq!(3u8.overflowing_pow(6), (217, true));
\n
1.0.0 (const: 1.50.0) · source

pub const fn pow(self, exp: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.pow(5), 32);
\n
source

pub const fn isqrt(self) -> usize

🔬This is a nightly-only experimental API. (isqrt)

Returns the square root of the number, rounded down.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(isqrt)]\nassert_eq!(10usize.isqrt(), 3);
\n
1.38.0 (const: 1.52.0) · source

pub const fn div_euclid(self, rhs: usize) -> usize

Performs Euclidean division.

\n

Since, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self / rhs.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7usize.div_euclid(4), 1); // or any other integer type
\n
1.38.0 (const: 1.52.0) · source

pub const fn rem_euclid(self, rhs: usize) -> usize

Calculates the least remainder of self (mod rhs).

\n

Since, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self % rhs.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7usize.rem_euclid(4), 3); // or any other integer type
\n
source

pub const fn div_floor(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (int_roundings)

Calculates the quotient of self and rhs, rounding the result towards negative infinity.

\n

This is the same as performing self / rhs for all unsigned integers.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(int_roundings)]\nassert_eq!(7_usize.div_floor(4), 1);
\n
1.73.0 (const: 1.73.0) · source

pub const fn div_ceil(self, rhs: usize) -> usize

Calculates the quotient of self and rhs, rounding the result towards positive infinity.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7_usize.div_ceil(4), 2);
\n
1.73.0 (const: 1.73.0) · source

pub const fn next_multiple_of(self, rhs: usize) -> usize

Calculates the smallest value greater than or equal to self that\nis a multiple of rhs.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Overflow behavior
\n

On overflow, this function will panic if overflow checks are enabled (default in debug\nmode) and wrap if overflow checks are disabled (default in release mode).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(16_usize.next_multiple_of(8), 16);\nassert_eq!(23_usize.next_multiple_of(8), 24);
\n
1.73.0 (const: 1.73.0) · source

pub const fn checked_next_multiple_of(self, rhs: usize) -> Option<usize>

Calculates the smallest value greater than or equal to self that\nis a multiple of rhs. Returns None if rhs is zero or the\noperation would result in overflow.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(16_usize.checked_next_multiple_of(8), Some(16));\nassert_eq!(23_usize.checked_next_multiple_of(8), Some(24));\nassert_eq!(1_usize.checked_next_multiple_of(0), None);\nassert_eq!(usize::MAX.checked_next_multiple_of(2), None);
\n
1.0.0 (const: 1.32.0) · source

pub const fn is_power_of_two(self) -> bool

Returns true if and only if self == 2^k for some k.

\n
§Examples
\n

Basic usage:

\n\n
assert!(16usize.is_power_of_two());\nassert!(!10usize.is_power_of_two());
\n
1.0.0 (const: 1.50.0) · source

pub const fn next_power_of_two(self) -> usize

Returns the smallest power of two greater than or equal to self.

\n

When return value overflows (i.e., self > (1 << (N-1)) for type\nuN), it panics in debug mode and the return value is wrapped to 0 in\nrelease mode (the only situation in which this method can return 0).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.next_power_of_two(), 2);\nassert_eq!(3usize.next_power_of_two(), 4);\nassert_eq!(0usize.next_power_of_two(), 1);
\n
1.0.0 (const: 1.50.0) · source

pub const fn checked_next_power_of_two(self) -> Option<usize>

Returns the smallest power of two greater than or equal to self. If\nthe next power of two is greater than the type’s maximum value,\nNone is returned, otherwise the power of two is wrapped in Some.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.checked_next_power_of_two(), Some(2));\nassert_eq!(3usize.checked_next_power_of_two(), Some(4));\nassert_eq!(usize::MAX.checked_next_power_of_two(), None);
\n
source

pub const fn wrapping_next_power_of_two(self) -> usize

🔬This is a nightly-only experimental API. (wrapping_next_power_of_two)

Returns the smallest power of two greater than or equal to n. If\nthe next power of two is greater than the type’s maximum value,\nthe return value is wrapped to 0.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(wrapping_next_power_of_two)]\n\nassert_eq!(2usize.wrapping_next_power_of_two(), 2);\nassert_eq!(3usize.wrapping_next_power_of_two(), 4);\nassert_eq!(usize::MAX.wrapping_next_power_of_two(), 0);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_be_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nbig-endian (network) byte order.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_be_bytes();\nassert_eq!(bytes, [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_le_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nlittle-endian byte order.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_le_bytes();\nassert_eq!(bytes, [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_ne_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nnative byte order.

\n

As the target platform’s native endianness is used, portable code\nshould use to_be_bytes or to_le_bytes, as appropriate,\ninstead.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_ne_bytes();\nassert_eq!(\n    bytes,\n    if cfg!(target_endian = \"big\") {\n        [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]\n    } else {\n        [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]\n    }\n);
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_be_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its representation\nas a byte array in big endian.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_be_bytes([0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]);\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_be_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_be_bytes(int_bytes.try_into().unwrap())\n}
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_le_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its representation\nas a byte array in little endian.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_le_bytes([0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_le_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_le_bytes(int_bytes.try_into().unwrap())\n}
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_ne_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its memory representation\nas a byte array in native endianness.

\n

As the target platform’s native endianness is used, portable code\nlikely wants to use from_be_bytes or from_le_bytes, as\nappropriate instead.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_ne_bytes(if cfg!(target_endian = \"big\") {\n    [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]\n} else {\n    [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]\n});\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_ne_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_ne_bytes(int_bytes.try_into().unwrap())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn min_value() -> usize

👎Deprecating in a future version: replaced by the MIN associated constant on this type

New code should prefer to use\nusize::MIN instead.

\n

Returns the smallest value that can be represented by this integer type.

\n
1.0.0 (const: 1.32.0) · source

pub const fn max_value() -> usize

👎Deprecating in a future version: replaced by the MAX associated constant on this type

New code should prefer to use\nusize::MAX instead.

\n

Returns the largest value that can be represented by this integer type.

\n
source

pub const fn widening_mul(self, rhs: usize) -> (usize, usize)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates the complete product self * rhs without the possibility to overflow.

\n

This returns the low-order (wrapping) bits and the high-order (overflow) bits\nof the result as two separate values, in that order.

\n

If you also need to add a carry to the wide result, then you want\nSelf::carrying_mul instead.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(5u32.widening_mul(2), (10, 0));\nassert_eq!(1_000_000_000u32.widening_mul(10), (1410065408, 2));
\n
source

pub const fn carrying_mul(self, rhs: usize, carry: usize) -> (usize, usize)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates the “full multiplication” self * rhs + carry\nwithout the possibility to overflow.

\n

This returns the low-order (wrapping) bits and the high-order (overflow) bits\nof the result as two separate values, in that order.

\n

Performs “long multiplication” which takes in an extra amount to add, and may return an\nadditional amount of overflow. This allows for chaining together multiple\nmultiplications to create “big integers” which represent larger values.

\n

If you don’t need the carry, then you can use Self::widening_mul instead.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(5u32.carrying_mul(2, 0), (10, 0));\nassert_eq!(5u32.carrying_mul(2, 10), (20, 0));\nassert_eq!(1_000_000_000u32.carrying_mul(10, 0), (1410065408, 2));\nassert_eq!(1_000_000_000u32.carrying_mul(10, 10), (1410065418, 2));\nassert_eq!(usize::MAX.carrying_mul(usize::MAX, usize::MAX), (0, usize::MAX));
\n

This is the core operation needed for scalar multiplication when\nimplementing it for wider-than-native types.

\n\n
#![feature(bigint_helper_methods)]\nfn scalar_mul_eq(little_endian_digits: &mut Vec<u16>, multiplicand: u16) {\n    let mut carry = 0;\n    for d in little_endian_digits.iter_mut() {\n        (*d, carry) = d.carrying_mul(multiplicand, carry);\n    }\n    if carry != 0 {\n        little_endian_digits.push(carry);\n    }\n}\n\nlet mut v = vec![10, 20];\nscalar_mul_eq(&mut v, 3);\nassert_eq!(v, [30, 60]);\n\nassert_eq!(0x87654321_u64 * 0xFEED, 0x86D3D159E38D);\nlet mut v = vec![0x4321, 0x8765];\nscalar_mul_eq(&mut v, 0xFEED);\nassert_eq!(v, [0xE38D, 0xD159, 0x86D3]);
\n

If carry is zero, this is similar to overflowing_mul,\nexcept that it gives the value of the overflow instead of just whether one happened:

\n\n
#![feature(bigint_helper_methods)]\nlet r = u8::carrying_mul(7, 13, 0);\nassert_eq!((r.0, r.1 != 0), u8::overflowing_mul(7, 13));\nlet r = u8::carrying_mul(13, 42, 0);\nassert_eq!((r.0, r.1 != 0), u8::overflowing_mul(13, 42));
\n

The value of the first field in the returned tuple matches what you’d get\nby combining the wrapping_mul and\nwrapping_add methods:

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(\n    789_u16.carrying_mul(456, 123).0,\n    789_u16.wrapping_mul(456).wrapping_add(123),\n);
\n
source

pub const fn midpoint(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (num_midpoint)

Calculates the middle point of self and rhs.

\n

midpoint(a, b) is (a + b) >> 1 as if it were performed in a\nsufficiently-large signed integral type. This implies that the result is\nalways rounded towards negative infinity and that no overflow will ever occur.

\n
§Examples
\n
#![feature(num_midpoint)]\nassert_eq!(0usize.midpoint(4), 2);\nassert_eq!(1usize.midpoint(4), 2);
\n
",0,"gosling::context::HandshakeHandle"],["
source§

impl usize

1.0.0 (const: unstable) · source

pub fn from_str_radix(src: &str, radix: u32) -> Result<usize, ParseIntError>

Converts a string slice in a given base to an integer.

\n

The string is expected to be an optional + sign\nfollowed by digits.\nLeading and trailing whitespace represent an error.\nDigits are a subset of these characters, depending on radix:

\n
    \n
  • 0-9
  • \n
  • a-z
  • \n
  • A-Z
  • \n
\n
§Panics
\n

This function panics if radix is not in the range from 2 to 36.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::from_str_radix(\"A\", 16), Ok(10));
\n
",0,"gosling::context::HandshakeHandle"],["
§

impl AtLeast16 for usize

","AtLeast16","gosling::context::HandshakeHandle"],["
§

impl AtLeast32 for usize

","AtLeast32","gosling::context::HandshakeHandle"],["
§

impl AtLeast64 for usize

","AtLeast64","gosling::context::HandshakeHandle"],["
§

impl AtLeast8 for usize

","AtLeast8","gosling::context::HandshakeHandle"],["
§

impl AtMost128 for usize

","AtMost128","gosling::context::HandshakeHandle"],["
§

impl AtMost64 for usize

","AtMost64","gosling::context::HandshakeHandle"],["
§

impl BitOps for usize

","BitOps","gosling::context::HandshakeHandle"],["
source§

impl ConstParamTy for usize

","ConstParamTy","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Copy for usize

","Copy","gosling::context::HandshakeHandle"],["
§

impl DefaultIsZeroes for usize

","DefaultIsZeroes","gosling::context::HandshakeHandle"],["
1.0.0 · source§

impl Eq for usize

","Eq","gosling::context::HandshakeHandle"],["
§

impl ExtendTarget<usize> for usize

","ExtendTarget","gosling::context::HandshakeHandle"],["
source§

impl Index for usize

","Index","gosling::context::HandshakeHandle"],["
§

impl Index for usize

","Index","gosling::context::HandshakeHandle"],["
source§

impl Integer for usize

","Integer","gosling::context::HandshakeHandle"],["
§

impl Is64 for usize

","Is64","gosling::context::HandshakeHandle"],["
§

impl NotAutoValue for usize

","NotAutoValue","gosling::context::HandshakeHandle"],["
§

impl NumericOps for usize

","NumericOps","gosling::context::HandshakeHandle"],["
source§

impl SimdCast for usize

","SimdCast","gosling::context::HandshakeHandle"],["
source§

impl StructuralPartialEq for usize

","StructuralPartialEq","gosling::context::HandshakeHandle"],["
§

impl TruncateTarget<u16> for usize

","TruncateTarget","gosling::context::HandshakeHandle"],["
§

impl TruncateTarget<u8> for usize

","TruncateTarget","gosling::context::HandshakeHandle"],["
§

impl TruncateTarget<usize> for usize

","TruncateTarget","gosling::context::HandshakeHandle"],["
source§

impl TrustedStep for usize

","TrustedStep","gosling::context::HandshakeHandle"],["
§

impl Uint for usize

","Uint","gosling::context::HandshakeHandle"],["
source§

impl Unsigned for usize

","Unsigned","gosling::context::HandshakeHandle"],["
source§

impl Weight for usize

","Weight","gosling::context::HandshakeHandle"],["
source§

impl ZeroablePrimitive for usize

","ZeroablePrimitive","gosling::context::HandshakeHandle"]], +"tor_interface":[["
§

impl<T> Accumulate<T> for usize

§

fn initial(_capacity: Option<usize>) -> usize

Create a new Extend of the correct type
§

fn accumulate(&mut self, _acc: T)

Accumulate the input into an accumulator
","Accumulate","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Add<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the + operator.
source§

fn add(self, other: &BigInt) -> BigInt

Performs the + operation. Read more
","Add<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Add<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the + operator.
source§

fn add(self, other: &BigUint) -> BigUint

Performs the + operation. Read more
","Add<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Add<&usize> for usize

§

type Output = <usize as Add>::Output

The resulting type after applying the + operator.
source§

fn add(self, other: &usize) -> <usize as Add>::Output

Performs the + operation. Read more
","Add<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Add<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the + operator.
source§

fn add(self, other: BigInt) -> BigInt

Performs the + operation. Read more
","Add","tor_interface::tor_provider::CircuitToken"],["
source§

impl Add<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the + operator.
source§

fn add(self, other: BigUint) -> BigUint

Performs the + operation. Read more
","Add","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Add for usize

§

type Output = usize

The resulting type after applying the + operator.
source§

fn add(self, other: usize) -> usize

Performs the + operation. Read more
","Add","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl AddAssign<&usize> for usize

source§

fn add_assign(&mut self, other: &usize)

Performs the += operation. Read more
","AddAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl AddAssign for usize

source§

fn add_assign(&mut self, other: usize)

Performs the += operation. Read more
","AddAssign","tor_interface::tor_provider::CircuitToken"],["
§

impl AsAny for usize

§

fn as_any(&self) -> &(dyn Any + 'static)

Returns thick pointer of &dyn Any type, that can be later downcasted\nback to a reference of the original type.
","AsAny","tor_interface::tor_provider::CircuitToken"],["
§

impl AsBytes for usize

§

fn as_bytes(&self) -> &[u8]

Gets the bytes of this value. Read more
§

fn as_bytes_mut(&mut self) -> &mut [u8]
where\n Self: FromBytes,

Gets the bytes of this value mutably. Read more
§

fn write_to(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to bytes. Read more
§

fn write_to_prefix(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to the prefix of bytes. Read more
§

fn write_to_suffix(&self, bytes: &mut [u8]) -> Option<()>

Writes a copy of self to the suffix of bytes. Read more
","AsBytes","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<f32> for usize

source§

fn as_(self) -> f32

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<f64> for usize

source§

fn as_(self) -> f64

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i128> for usize

source§

fn as_(self) -> i128

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i16> for usize

source§

fn as_(self) -> i16

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i32> for usize

source§

fn as_(self) -> i32

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i64> for usize

source§

fn as_(self) -> i64

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<i8> for usize

source§

fn as_(self) -> i8

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<isize> for usize

source§

fn as_(self) -> isize

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u128> for usize

source§

fn as_(self) -> u128

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u16> for usize

source§

fn as_(self) -> u16

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u32> for usize

source§

fn as_(self) -> u32

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u64> for usize

source§

fn as_(self) -> u64

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<u8> for usize

source§

fn as_(self) -> u8

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
source§

impl AsPrimitive<usize> for usize

source§

fn as_(self) -> usize

Convert a value to another, using the as operator.
","AsPrimitive","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Binary for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Binary","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitAnd<&usize> for usize

§

type Output = <usize as BitAnd>::Output

The resulting type after applying the & operator.
source§

fn bitand(self, other: &usize) -> <usize as BitAnd>::Output

Performs the & operation. Read more
","BitAnd<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitAnd for usize

§

type Output = usize

The resulting type after applying the & operator.
source§

fn bitand(self, rhs: usize) -> usize

Performs the & operation. Read more
","BitAnd","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl BitAndAssign<&usize> for usize

source§

fn bitand_assign(&mut self, other: &usize)

Performs the &= operation. Read more
","BitAndAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl BitAndAssign for usize

source§

fn bitand_assign(&mut self, other: usize)

Performs the &= operation. Read more
","BitAndAssign","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitOr<&usize> for usize

§

type Output = <usize as BitOr>::Output

The resulting type after applying the | operator.
source§

fn bitor(self, other: &usize) -> <usize as BitOr>::Output

Performs the | operation. Read more
","BitOr<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitOr for usize

§

type Output = usize

The resulting type after applying the | operator.
source§

fn bitor(self, rhs: usize) -> usize

Performs the | operation. Read more
","BitOr","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl BitOrAssign<&usize> for usize

source§

fn bitor_assign(&mut self, other: &usize)

Performs the |= operation. Read more
","BitOrAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl BitOrAssign for usize

source§

fn bitor_assign(&mut self, other: usize)

Performs the |= operation. Read more
","BitOrAssign","tor_interface::tor_provider::CircuitToken"],["
§

impl BitRegister for usize

§

const ALL: usize = 18_446_744_073_709_551_615usize

The literal !0.
§

const INDX: u8 = _

The number of bits required to store an index in the range 0 .. BITS.
§

const MASK: u8 = _

A mask over all bits that can be used as an index within the element.\nThis is the value with the least significant INDX-many bits set high.
","BitRegister","tor_interface::tor_provider::CircuitToken"],["
§

impl<'a, T, O> BitSliceIndex<'a, T, O> for usize
where\n T: BitStore,\n O: BitOrder,

§

type Immut = BitRef<'a, Const, T, O>

The output type of immutable access.
§

type Mut = BitRef<'a, Mut, T, O>

The output type of mutable access.
§

fn get(\n self,\n bits: &'a BitSlice<T, O>,\n) -> Option<<usize as BitSliceIndex<'a, T, O>>::Immut>

Immutably indexes into a bit-slice, returning None if self is out of\nbounds. Read more
§

fn get_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> Option<<usize as BitSliceIndex<'a, T, O>>::Mut>

Mutably indexes into a bit-slice, returning None if self is out of\nbounds. Read more
§

unsafe fn get_unchecked(\n self,\n bits: &'a BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Immut

Immutably indexes into a bit-slice without doing any bounds checking. Read more
§

unsafe fn get_unchecked_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Mut

Mutably indexes into a bit-slice without doing any bounds checking. Read more
§

fn index(\n self,\n bits: &'a BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Immut

Immutably indexes into a bit-slice, panicking if self is out of\nbounds. Read more
§

fn index_mut(\n self,\n bits: &'a mut BitSlice<T, O>,\n) -> <usize as BitSliceIndex<'a, T, O>>::Mut

Mutably indexes into a bit-slice, panicking if self is out of bounds. Read more
","BitSliceIndex<'a, T, O>","tor_interface::tor_provider::CircuitToken"],["
§

impl BitStore for usize

§

type Access = Cell<usize>

The unsigned integers will only be BitStore type parameters\nfor handles to unaliased memory, following the normal Rust\nreference rules.

\n
§

type Mem = usize

The element type used in the memory region underlying a BitSlice. It\nis always one of the unsigned integer fundamentals.
§

type Alias = BitSafeUsize

A sibling BitStore implementor that is known to be alias-safe. It is\nused when a BitSlice introduces multiple handles that view the same\nmemory location, and at least one of them has write capabilities to it.\nIt must have the same underlying memory type, and can only change access\npatterns or public-facing usage.
§

type Unalias = usize

The inverse of ::Alias. It is used when a BitSlice removes the\nconditions that required a T -> T::Alias transition.
§

const ZERO: usize = 0usize

The zero constant.
§

fn new(value: <usize as BitStore>::Mem) -> usize

Wraps a raw memory value as a BitStore type.
§

fn load_value(&self) -> <usize as BitStore>::Mem

Loads a value out of the memory system according to the ::Access\nrules. This may be called when the value is aliased by a write-capable\nreference.
§

fn store_value(&mut self, value: <usize as BitStore>::Mem)

Stores a value into the memory system. This is only called when there\nare no other handles to the value, and it may bypass ::Access\nconstraints.
§

const ALIGNED_TO_SIZE: [(); 1] = _

All implementors are required to have their alignment match their size. Read more
§

const ALIAS_WIDTH: [(); 1] = _

All implementors are required to have Self and Self::Alias be equal\nin representation. This is true by fiat for all types except the\nunsigned integers. Read more
§

fn get_bit<O>(&self, index: BitIdx<Self::Mem>) -> bool
where\n O: BitOrder,

Reads a single bit out of the memory system according to the ::Access\nrules. This is lifted from BitAccess so that it can be used\nelsewhere without additional casts. Read more
","BitStore","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitXor<&usize> for usize

§

type Output = <usize as BitXor>::Output

The resulting type after applying the ^ operator.
source§

fn bitxor(self, other: &usize) -> <usize as BitXor>::Output

Performs the ^ operation. Read more
","BitXor<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl BitXor for usize

§

type Output = usize

The resulting type after applying the ^ operator.
source§

fn bitxor(self, other: usize) -> usize

Performs the ^ operation. Read more
","BitXor","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl BitXorAssign<&usize> for usize

source§

fn bitxor_assign(&mut self, other: &usize)

Performs the ^= operation. Read more
","BitXorAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl BitXorAssign for usize

source§

fn bitxor_assign(&mut self, other: usize)

Performs the ^= operation. Read more
","BitXorAssign","tor_interface::tor_provider::CircuitToken"],["
§

impl Bits for usize

§

const EMPTY: usize = 0usize

A value with all bits unset.
§

const ALL: usize = 18_446_744_073_709_551_615usize

A value with all bits set.
","Bits","tor_interface::tor_provider::CircuitToken"],["
source§

impl Bounded for usize

source§

fn min_value() -> usize

Returns the smallest finite number this type can represent
source§

fn max_value() -> usize

Returns the largest finite number this type can represent
","Bounded","tor_interface::tor_provider::CircuitToken"],["
§

impl CastSigned for usize

§

type Signed = isize

The signed integer type with the same size as Self.
§

fn cast_signed(self) -> <usize as CastSigned>::Signed

Cast an integer to the signed integer of the same size.
","CastSigned","tor_interface::tor_provider::CircuitToken"],["
§

impl CastUnsigned for usize

§

type Unsigned = usize

The unsigned integer type with the same size as Self.
§

fn cast_unsigned(self) -> <usize as CastUnsigned>::Unsigned

Cast an integer to the unsigned integer of the same size.
","CastUnsigned","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedAdd for usize

source§

fn checked_add(&self, v: &usize) -> Option<usize>

Adds two numbers, checking for overflow. If overflow happens, None is\nreturned.
","CheckedAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedDiv for usize

source§

fn checked_div(&self, v: &usize) -> Option<usize>

Divides two numbers, checking for underflow, overflow and division by\nzero. If any of that happens, None is returned.
","CheckedDiv","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedEuclid for usize

source§

fn checked_div_euclid(&self, v: &usize) -> Option<usize>

Performs euclid division that returns None instead of panicking on division by zero\nand instead of wrapping around on underflow and overflow.
source§

fn checked_rem_euclid(&self, v: &usize) -> Option<usize>

Finds the euclid remainder of dividing two numbers, checking for underflow, overflow and\ndivision by zero. If any of that happens, None is returned.
source§

fn checked_div_rem_euclid(&self, v: &Self) -> Option<(Self, Self)>

Returns both the quotient and remainder from checked Euclidean division. Read more
","CheckedEuclid","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedMul for usize

source§

fn checked_mul(&self, v: &usize) -> Option<usize>

Multiplies two numbers, checking for underflow or overflow. If underflow\nor overflow happens, None is returned.
","CheckedMul","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedNeg for usize

source§

fn checked_neg(&self) -> Option<usize>

Negates a number, returning None for results that can’t be represented, like signed MIN\nvalues that can’t be positive, or non-zero unsigned values that can’t be negative. Read more
","CheckedNeg","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedRem for usize

source§

fn checked_rem(&self, v: &usize) -> Option<usize>

Finds the remainder of dividing two numbers, checking for underflow, overflow and division\nby zero. If any of that happens, None is returned. Read more
","CheckedRem","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedShl for usize

source§

fn checked_shl(&self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None\nif rhs is larger than or equal to the number of bits in self. Read more
","CheckedShl","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedShr for usize

source§

fn checked_shr(&self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None\nif rhs is larger than or equal to the number of bits in self. Read more
","CheckedShr","tor_interface::tor_provider::CircuitToken"],["
source§

impl CheckedSub for usize

source§

fn checked_sub(&self, v: &usize) -> Option<usize>

Subtracts two numbers, checking for underflow. If underflow happens,\nNone is returned.
","CheckedSub","tor_interface::tor_provider::CircuitToken"],["
§

impl<T> CheckedSum<usize> for T
where\n T: IntoIterator<Item = usize>,

§

fn checked_sum(self) -> Result<usize, Error>

Iterate over the values of this type, computing a checked sum. Read more
","CheckedSum","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Clone for usize

source§

fn clone(&self) -> usize

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
","Clone","tor_interface::tor_provider::CircuitToken"],["
source§

impl ConstOne for usize

source§

const ONE: usize = 1usize

The multiplicative identity element of Self, 1.
","ConstOne","tor_interface::tor_provider::CircuitToken"],["
source§

impl ConstZero for usize

source§

const ZERO: usize = 0usize

The additive identity element of Self, 0.
","ConstZero","tor_interface::tor_provider::CircuitToken"],["
source§

impl ConstantTimeEq for usize

source§

fn ct_eq(&self, other: &usize) -> Choice

Determine if two items are equal. Read more
source§

fn ct_ne(&self, other: &Self) -> Choice

Determine if two items are NOT equal. Read more
","ConstantTimeEq","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Debug for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Debug","tor_interface::tor_provider::CircuitToken"],["
§

impl Decode for usize

Decode a usize.

\n

Uses [Decode] impl on u32 and then converts to a usize, handling\npotential overflow if usize is smaller than u32.

\n

Enforces a library-internal limit of 1048575, as the main use case for\nusize is length prefixes.

\n
§

type Error = Error

Type returned in the event of a decoding error.
§

fn decode(reader: &mut impl Reader) -> Result<usize, Error>

Attempt to decode a value of this type using the provided [Reader].
","Decode","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Default for usize

source§

fn default() -> usize

Returns the default value of 0

\n
","Default","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'de> Deserialize<'de> for usize

source§

fn deserialize<D>(\n deserializer: D,\n) -> Result<usize, <D as Deserializer<'de>>::Error>
where\n D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
","Deserialize<'de>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Display for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Display","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Div<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the / operator.
source§

fn div(self, other: &BigInt) -> BigInt

Performs the / operation. Read more
","Div<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Div<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the / operator.
source§

fn div(self, other: &BigUint) -> BigUint

Performs the / operation. Read more
","Div<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Div<&usize> for usize

§

type Output = <usize as Div>::Output

The resulting type after applying the / operator.
source§

fn div(self, other: &usize) -> <usize as Div>::Output

Performs the / operation. Read more
","Div<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Div<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the / operator.
source§

fn div(self, other: BigInt) -> BigInt

Performs the / operation. Read more
","Div","tor_interface::tor_provider::CircuitToken"],["
source§

impl Div<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the / operator.
source§

fn div(self, other: BigUint) -> BigUint

Performs the / operation. Read more
","Div","tor_interface::tor_provider::CircuitToken"],["
1.51.0 · source§

impl Div<NonZero<usize>> for usize

source§

fn div(self, other: NonZero<usize>) -> usize

This operation rounds towards zero, truncating any fractional\npart of the exact result, and cannot panic.

\n
§

type Output = usize

The resulting type after applying the / operator.
","Div>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Div for usize

This operation rounds towards zero, truncating any\nfractional part of the exact result.

\n

§Panics

\n

This operation will panic if other == 0.

\n
§

type Output = usize

The resulting type after applying the / operator.
source§

fn div(self, other: usize) -> usize

Performs the / operation. Read more
","Div","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl DivAssign<&usize> for usize

source§

fn div_assign(&mut self, other: &usize)

Performs the /= operation. Read more
","DivAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.79.0 · source§

impl DivAssign<NonZero<usize>> for usize

source§

fn div_assign(&mut self, other: NonZero<usize>)

This operation rounds towards zero, truncating any fractional\npart of the exact result, and cannot panic.

\n
","DivAssign>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl DivAssign for usize

source§

fn div_assign(&mut self, other: usize)

Performs the /= operation. Read more
","DivAssign","tor_interface::tor_provider::CircuitToken"],["
§

impl Encode for usize

Encode a usize as a uint32 as described in RFC4251 § 5.

\n

Uses [Encode] impl on u32 after converting from a usize, handling\npotential overflow if usize is bigger than u32.

\n
§

fn encoded_len(&self) -> Result<usize, Error>

Get the length of this type encoded in bytes, prior to Base64 encoding.
§

fn encode(&self, writer: &mut impl Writer) -> Result<(), Error>

Encode this value using the provided [Writer].
§

fn encoded_len_prefixed(&self) -> Result<usize, Error>

Return the length of this type after encoding when prepended with a\nuint32 length prefix.
§

fn encode_prefixed(&self, writer: &mut impl Writer) -> Result<(), Error>

Encode this value, first prepending a uint32 length prefix\nset to [Encode::encoded_len].
","Encode","tor_interface::tor_provider::CircuitToken"],["
source§

impl Euclid for usize

source§

fn div_euclid(&self, v: &usize) -> usize

Calculates Euclidean division, the matching method for rem_euclid. Read more
source§

fn rem_euclid(&self, v: &usize) -> usize

Calculates the least nonnegative remainder of self (mod v). Read more
source§

fn div_rem_euclid(&self, v: &Self) -> (Self, Self)

Returns both the quotient and remainder from Euclidean division. Read more
","Euclid","tor_interface::tor_provider::CircuitToken"],["
source§

impl FmtConst for usize

source§

fn fmt_const(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Print a const expression representing this value.
","FmtConst","tor_interface::tor_provider::CircuitToken"],["
source§

impl From<Alignment> for usize

source§

fn from(align: Alignment) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<ByteQty> for usize

§

fn from(value: ByteQty) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<HopNum> for usize

§

fn from(hop: HopNum) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<HsDirPos> for usize

§

fn from(value: HsDirPos) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<IntroPtIndex> for usize

§

fn from(value: IntroPtIndex) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl<const MIN: usize, const MAX: usize> From<RangedUsize<MIN, MAX>> for usize

§

fn from(value: RangedUsize<MIN, MAX>) -> usize

Converts to this type from the input type.
","From>","tor_interface::tor_provider::CircuitToken"],["
§

impl From<RouterStatusIdx> for usize

§

fn from(value: RouterStatusIdx) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<State> for usize

§

fn from(src: State) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<Token> for usize

§

fn from(val: Token) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<Token> for usize

§

fn from(val: Token) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl<O> From<U16<O>> for usize
where\n O: ByteOrder,

§

fn from(x: U16<O>) -> usize

Converts to this type from the input type.
","From>","tor_interface::tor_provider::CircuitToken"],["
1.28.0 · source§

impl From<bool> for usize

source§

fn from(small: bool) -> usize

Converts a bool to usize losslessly.\nThe resulting value is 0 for false and 1 for true values.

\n
§Examples
\n
assert_eq!(usize::from(true), 1);\nassert_eq!(usize::from(false), 0);
\n
","From","tor_interface::tor_provider::CircuitToken"],["
1.26.0 · source§

impl From<u16> for usize

source§

fn from(small: u16) -> usize

Converts u16 to usize losslessly.

\n
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<u24> for usize

§

fn from(val: u24) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<u40> for usize

§

fn from(val: u40) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<u48> for usize

§

fn from(val: u48) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
§

impl From<u56> for usize

§

fn from(val: u56) -> usize

Converts to this type from the input type.
","From","tor_interface::tor_provider::CircuitToken"],["
1.5.0 · source§

impl From<u8> for usize

source§

fn from(small: u8) -> usize

Converts u8 to usize losslessly.

\n
","From","tor_interface::tor_provider::CircuitToken"],["
source§

impl FromBytes for usize

§

type Bytes = [u8; 8]

source§

fn from_be_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its representation as a byte array in big endian. Read more
source§

fn from_le_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its representation as a byte array in little endian. Read more
source§

fn from_ne_bytes(bytes: &<usize as FromBytes>::Bytes) -> usize

Create a number from its memory representation as a byte array in native endianness. Read more
","FromBytes","tor_interface::tor_provider::CircuitToken"],["
§

impl FromBytes for usize

§

fn ref_from(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the given bytes as a &Self without copying. Read more
§

fn ref_from_prefix(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the prefix of the given bytes as a &Self without copying. Read more
§

fn ref_from_suffix(bytes: &[u8]) -> Option<&Self>
where\n Self: Sized,

Interprets the suffix of the given bytes as a &Self without copying. Read more
§

fn mut_from(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the given bytes as a &mut Self without copying. Read more
§

fn mut_from_prefix(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the prefix of the given bytes as a &mut Self without\ncopying. Read more
§

fn mut_from_suffix(bytes: &mut [u8]) -> Option<&mut Self>
where\n Self: Sized + AsBytes,

Interprets the suffix of the given bytes as a &mut Self without copying. Read more
§

fn slice_from(bytes: &[u8]) -> Option<&[Self]>
where\n Self: Sized,

Interprets the given bytes as a &[Self] without copying. Read more
§

fn slice_from_prefix(bytes: &[u8], count: usize) -> Option<(&[Self], &[u8])>
where\n Self: Sized,

Interprets the prefix of the given bytes as a &[Self] with length\nequal to count without copying. Read more
§

fn slice_from_suffix(bytes: &[u8], count: usize) -> Option<(&[u8], &[Self])>
where\n Self: Sized,

Interprets the suffix of the given bytes as a &[Self] with length\nequal to count without copying. Read more
§

fn mut_slice_from(bytes: &mut [u8]) -> Option<&mut [Self]>
where\n Self: Sized + AsBytes,

Interprets the given bytes as a &mut [Self] without copying. Read more
§

fn mut_slice_from_prefix(\n bytes: &mut [u8],\n count: usize,\n) -> Option<(&mut [Self], &mut [u8])>
where\n Self: Sized + AsBytes,

Interprets the prefix of the given bytes as a &mut [Self] with length\nequal to count without copying. Read more
§

fn mut_slice_from_suffix(\n bytes: &mut [u8],\n count: usize,\n) -> Option<(&mut [u8], &mut [Self])>
where\n Self: Sized + AsBytes,

Interprets the suffix of the given bytes as a &mut [Self] with length\nequal to count without copying. Read more
§

fn read_from(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from bytes. Read more
§

fn read_from_prefix(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from the prefix of bytes. Read more
§

fn read_from_suffix(bytes: &[u8]) -> Option<Self>
where\n Self: Sized,

Reads a copy of Self from the suffix of bytes. Read more
","FromBytes","tor_interface::tor_provider::CircuitToken"],["
source§

impl FromPrimitive for usize

source§

fn from_isize(n: isize) -> Option<usize>

Converts an isize to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i8(n: i8) -> Option<usize>

Converts an i8 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i16(n: i16) -> Option<usize>

Converts an i16 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i32(n: i32) -> Option<usize>

Converts an i32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i64(n: i64) -> Option<usize>

Converts an i64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_i128(n: i128) -> Option<usize>

Converts an i128 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
source§

fn from_usize(n: usize) -> Option<usize>

Converts a usize to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u8(n: u8) -> Option<usize>

Converts an u8 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u16(n: u16) -> Option<usize>

Converts an u16 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u32(n: u32) -> Option<usize>

Converts an u32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u64(n: u64) -> Option<usize>

Converts an u64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_u128(n: u128) -> Option<usize>

Converts an u128 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
source§

fn from_f32(n: f32) -> Option<usize>

Converts a f32 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned.
source§

fn from_f64(n: f64) -> Option<usize>

Converts a f64 to return an optional value of this type. If the\nvalue cannot be represented by this type, then None is returned. Read more
","FromPrimitive","tor_interface::tor_provider::CircuitToken"],["
§

impl FromSql for usize

§

fn column_result(value: ValueRef<'_>) -> Result<usize, FromSqlError>

Converts SQLite value into Rust value.
","FromSql","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl FromStr for usize

§

type Err = ParseIntError

The associated error which can be returned from parsing.
source§

fn from_str(src: &str) -> Result<usize, ParseIntError>

Parses a string s to return a value of this type. Read more
","FromStr","tor_interface::tor_provider::CircuitToken"],["
§

impl FromZeroes for usize

§

fn zero(&mut self)

Overwrites self with zeroes. Read more
§

fn new_zeroed() -> Self
where\n Self: Sized,

Creates an instance of Self from zeroed bytes. Read more
","FromZeroes","tor_interface::tor_provider::CircuitToken"],["
§

impl Fundamental for usize

§

fn as_bool(self) -> bool

Tests self != 0.
§

fn as_char(self) -> Option<char>

Represents self as a Unicode Scalar Value, if possible.
§

fn as_i8(self) -> i8

Performs self as i8.
§

fn as_i16(self) -> i16

Performs self as i16.
§

fn as_i32(self) -> i32

Performs self as i32.
§

fn as_i64(self) -> i64

Performs self as i64.
§

fn as_i128(self) -> i128

Performs self as i128.
§

fn as_isize(self) -> isize

Performs self as isize.
§

fn as_u8(self) -> u8

Performs self as u8.
§

fn as_u16(self) -> u16

Performs self as u16.
§

fn as_u32(self) -> u32

Performs self as u32.
§

fn as_u64(self) -> u64

Performs self as u64.
§

fn as_u128(self) -> u128

Performs self as u128.
§

fn as_usize(self) -> usize

Performs self as usize.
§

fn as_f32(self) -> f32

Performs self as f32.
§

fn as_f64(self) -> f64

Performs self as f64.
","Fundamental","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Hash for usize

source§

fn hash<H>(&self, state: &mut H)
where\n H: Hasher,

Feeds this value into the given Hasher. Read more
source§

fn hash_slice<H>(data: &[usize], state: &mut H)
where\n H: Hasher,

Feeds a slice of this type into the given Hasher. Read more
","Hash","tor_interface::tor_provider::CircuitToken"],["
source§

impl Integer for usize

source§

fn div_floor(&self, other: &usize) -> usize

Unsigned integer division. Returns the same result as div (/).

\n
source§

fn mod_floor(&self, other: &usize) -> usize

Unsigned integer modulo operation. Returns the same result as rem (%).

\n
source§

fn gcd(&self, other: &usize) -> usize

Calculates the Greatest Common Divisor (GCD) of the number and other

\n
source§

fn lcm(&self, other: &usize) -> usize

Calculates the Lowest Common Multiple (LCM) of the number and other.

\n
source§

fn gcd_lcm(&self, other: &usize) -> (usize, usize)

Calculates the Greatest Common Divisor (GCD) and\nLowest Common Multiple (LCM) of the number and other.

\n
source§

fn is_multiple_of(&self, other: &usize) -> bool

Returns true if the number is a multiple of other.

\n
source§

fn is_even(&self) -> bool

Returns true if the number is divisible by 2.

\n
source§

fn is_odd(&self) -> bool

Returns true if the number is not divisible by 2.

\n
source§

fn div_rem(&self, other: &usize) -> (usize, usize)

Simultaneous truncated integer division and modulus.

\n
source§

fn div_ceil(&self, other: &usize) -> usize

Ceiled integer division. Read more
source§

fn extended_gcd_lcm(&self, other: &usize) -> (ExtendedGcd<usize>, usize)

Greatest common divisor, least common multiple, and Bézout coefficients.
source§

fn extended_gcd(&self, other: &Self) -> ExtendedGcd<Self>
where\n Self: Clone,

Greatest common divisor and Bézout coefficients. Read more
source§

fn divides(&self, other: &Self) -> bool

👎Deprecated: Please use is_multiple_of instead
Deprecated, use is_multiple_of instead.
source§

fn div_mod_floor(&self, other: &Self) -> (Self, Self)

Simultaneous floored integer division and modulus.\nReturns (quotient, remainder). Read more
source§

fn next_multiple_of(&self, other: &Self) -> Self
where\n Self: Clone,

Rounds up to nearest multiple of argument. Read more
source§

fn prev_multiple_of(&self, other: &Self) -> Self
where\n Self: Clone,

Rounds down to nearest multiple of argument. Read more
source§

fn dec(&mut self)
where\n Self: Clone,

Decrements self by one. Read more
source§

fn inc(&mut self)
where\n Self: Clone,

Increments self by one. Read more
","Integer","tor_interface::tor_provider::CircuitToken"],["
§

impl Integral for usize

§

const ZERO: usize = 0usize

The type’s zero value.
§

const ONE: usize = 1usize

The type’s step value.
§

const MIN: usize = 0usize

The type’s minimum value. This is zero for unsigned integers.
§

const MAX: usize = 18_446_744_073_709_551_615usize

The type’s maximum value.
§

const BITS: u32 = 64u32

The size of this type in bits.
§

fn min_value() -> usize

Returns the smallest value that can be represented by this integer type.
§

fn max_value() -> usize

Returns the largest value that can be represented by this integer type.
§

fn from_str_radix(src: &str, radix: u32) -> Result<usize, ParseIntError>

Converts a string slice in a given base to an integer. Read more
§

fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self.
§

fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self.
§

fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of\nself.
§

fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation of\nself.
§

fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation of\nself.
§

fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation of\nself.
§

fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, wrapping the\ntruncated bits to the end of the resulting integer. Read more
§

fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, wrapping the\ntruncated bits to the beginning of the resulting integer. Read more
§

fn swap_bytes(self) -> usize

Reverses the byte order of the integer.
§

fn reverse_bits(self) -> usize

Reverses the bit pattern of the integer.
§

fn from_be(self) -> usize

Converts an integer from big endian to the target’s endianness. Read more
§

fn from_le(self) -> usize

Converts an integer frm little endian to the target’s endianness. Read more
§

fn to_be(self) -> usize

Converts self to big endian from the target’s endianness. Read more
§

fn to_le(self) -> usize

Converts self to little endian from the target’s endianness. Read more
§

fn checked_add(self, rhs: usize) -> Option<usize>

Checked integer addition. Computes self + rhs, returning None if\noverflow occurred.
§

fn checked_sub(self, rhs: usize) -> Option<usize>

Checked integer subtraction. Computes self - rhs, returning None if\noverflow occurred.
§

fn checked_mul(self, rhs: usize) -> Option<usize>

Checked integer multiplication. Computes self * rhs, returning None\nif overflow occurred.
§

fn checked_div(self, rhs: usize) -> Option<usize>

Checked integer division. Computes self / rhs, returning None if\nrhs == 0 or the division results in overflow.
§

fn checked_div_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean division. Computes self.div_euclid(rhs), returning\nNone if rhs == 0 or the division results in overflow.
§

fn checked_rem(self, rhs: usize) -> Option<usize>

Checked integer remainder. Computes self % rhs, returning None if\nrhs == 0 or the division results in overflow.
§

fn checked_rem_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean remainder. Computes self.rem_euclid(rhs), returning\nNone if rhs == 0 or the division results in overflow.
§

fn checked_neg(self) -> Option<usize>

Checked negation. Computes -self, returning None if self == MIN. Read more
§

fn checked_shl(self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None if rhs is\nlarger than or equal to the number of bits in self.
§

fn checked_shr(self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None if rhs\nis larger than or equal to the number of bits in self.
§

fn checked_pow(self, rhs: u32) -> Option<usize>

Checked exponentiation. Computes self.pow(exp), returning None if\noverflow occurred.
§

fn saturating_add(self, rhs: usize) -> usize

Saturating integer addition. Computes self + rhs, saturating at the\nnumeric bounds instead of overflowing.
§

fn saturating_sub(self, rhs: usize) -> usize

Saturating integer subtraction. Computes self - rhs, saturating at the\nnumeric bounds instead of overflowing.
§

fn saturating_mul(self, rhs: usize) -> usize

Saturating integer multiplication. Computes self * rhs, saturating at\nthe numeric bounds instead of overflowing.
§

fn saturating_pow(self, rhs: u32) -> usize

Saturating integer exponentiation. Computes self.pow(exp), saturating\nat the numeric bounds instead of overflowing.
§

fn wrapping_add(self, rhs: usize) -> usize

Wrapping (modular) addition. Computes self + rhs, wrapping around at\nthe boundary of the type.
§

fn wrapping_sub(self, rhs: usize) -> usize

Wrapping (modular) subtraction. Computes self - rhs, wrapping around\nat the boundary of the type.
§

fn wrapping_mul(self, rhs: usize) -> usize

Wrapping (modular) multiplication. Computes self * rhs, wrapping\naround at the boundary of the type.
§

fn wrapping_div(self, rhs: usize) -> usize

Wrapping (modular) division. Computes self / rhs, wrapping around at\nthe boundary of the type. Read more
§

fn wrapping_div_euclid(self, rhs: usize) -> usize

Wrapping Euclidean division. Computes self.div_euclid(rhs), wrapping\naround at the boundary of the type. Read more
§

fn wrapping_rem(self, rhs: usize) -> usize

Wrapping (modular) remainder. Computes self % rhs, wrapping around at\nthe boundary of the type. Read more
§

fn wrapping_rem_euclid(self, rhs: usize) -> usize

Wrapping Euclidean remainder. Computes self.rem_euclid(rhs), wrapping\naround at the boundary of the type. Read more
§

fn wrapping_neg(self) -> usize

Wrapping (modular) negation. Computes -self, wrapping around at the\nboundary of the type. Read more
§

fn wrapping_shl(self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs), where mask\nremoves any high-order bits of rhs that would cause the shift to\nexceed the bit-width of the type. Read more
§

fn wrapping_shr(self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs), where mask\nremoves any high-order bits of rhs that would cause the shift to\nexceed the bit-width of the type. Read more
§

fn wrapping_pow(self, rhs: u32) -> usize

Wrapping (modular) exponentiation. Computes self.pow(exp), wrapping\naround at the boundary of the type.
§

fn overflowing_add(self, rhs: usize) -> (usize, bool)

Calculates self + rhs Read more
§

fn overflowing_sub(self, rhs: usize) -> (usize, bool)

Calculates self - rhs Read more
§

fn overflowing_mul(self, rhs: usize) -> (usize, bool)

Calculates the multiplication of self and rhs. Read more
§

fn overflowing_div(self, rhs: usize) -> (usize, bool)

Calculates the divisor when self is divided by rhs. Read more
§

fn overflowing_div_euclid(self, rhs: usize) -> (usize, bool)

Calculates the quotient of Euclidean division self.div_euclid(rhs). Read more
§

fn overflowing_rem(self, rhs: usize) -> (usize, bool)

Calculates the remainder when self is divided by rhs. Read more
§

fn overflowing_rem_euclid(self, rhs: usize) -> (usize, bool)

Overflowing Euclidean remainder. Calculates self.rem_euclid(rhs). Read more
§

fn overflowing_neg(self) -> (usize, bool)

Negates self, overflowing if this is equal to the minimum value. Read more
§

fn overflowing_shl(self, rhs: u32) -> (usize, bool)

Shifts self left by rhs bits. Read more
§

fn overflowing_shr(self, rhs: u32) -> (usize, bool)

Shifts self right by rhs bits. Read more
§

fn overflowing_pow(self, rhs: u32) -> (usize, bool)

Raises self to the power of exp, using exponentiation by squaring. Read more
§

fn pow(self, rhs: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring.
§

fn div_euclid(self, rhs: usize) -> usize

Calculates the quotient of Euclidean division of self by rhs. Read more
§

fn rem_euclid(self, rhs: usize) -> usize

Calculates the least nonnegative remainder of self (mod rhs). Read more
","Integral","tor_interface::tor_provider::CircuitToken"],["
source§

impl IntoBigInt for usize

source§

fn into_bigint(self) -> Option<BigInt>

Converts the value of self to a BigInt.
","IntoBigInt","tor_interface::tor_provider::CircuitToken"],["
source§

impl IntoBigUint for usize

source§

fn into_biguint(self) -> Option<BigUint>

Converts the value of self to a BigUint.
","IntoBigUint","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'de, E> IntoDeserializer<'de, E> for usize
where\n E: Error,

§

type Deserializer = UsizeDeserializer<E>

The type of the deserializer being converted into.
source§

fn into_deserializer(self) -> UsizeDeserializer<E>

Convert this value into a deserializer.
","IntoDeserializer<'de, E>","tor_interface::tor_provider::CircuitToken"],["
§

impl IntoNotification for usize

§

type Tag = ()

The tag data associated with a notification. Read more
§

type Notify = Notify

The notification type. Read more
§

fn into_notification(self) -> <usize as IntoNotification>::Notify

Convert this value into a notification. Read more
§

fn additional(self) -> Additional<Self::Notify>
where\n Self: Sized,

Convert this value into an additional notification. Read more
§

fn relaxed(self) -> Relaxed<Self::Notify>
where\n Self: Sized,

Don’t emit a fence for this notification. Read more
§

fn tag<T>(self, tag: T) -> Tag<Self::Notify, T>
where\n T: Clone,\n Self: Sized + IntoNotification<Tag = ()>,

Use a tag with this notification. Read more
§

fn tag_with<T, F>(self, tag: F) -> TagWith<Self::Notify, F>
where\n Self: Sized + IntoNotification<Tag = ()>,\n F: FnMut() -> T,

Use a function to generate a tag with this notification. Read more
","IntoNotification","tor_interface::tor_provider::CircuitToken"],["
1.42.0 · source§

impl LowerExp for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","LowerExp","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl LowerHex for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","LowerHex","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Mul<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the * operator.
source§

fn mul(self, other: &BigInt) -> BigInt

Performs the * operation. Read more
","Mul<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Mul<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the * operator.
source§

fn mul(self, other: &BigUint) -> BigUint

Performs the * operation. Read more
","Mul<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Mul<&usize> for usize

§

type Output = <usize as Mul>::Output

The resulting type after applying the * operator.
source§

fn mul(self, other: &usize) -> <usize as Mul>::Output

Performs the * operation. Read more
","Mul<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Mul<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the * operator.
source§

fn mul(self, other: BigInt) -> BigInt

Performs the * operation. Read more
","Mul","tor_interface::tor_provider::CircuitToken"],["
source§

impl Mul<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the * operator.
source§

fn mul(self, other: BigUint) -> BigUint

Performs the * operation. Read more
","Mul","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Mul for usize

§

type Output = usize

The resulting type after applying the * operator.
source§

fn mul(self, other: usize) -> usize

Performs the * operation. Read more
","Mul","tor_interface::tor_provider::CircuitToken"],["
source§

impl MulAdd for usize

§

type Output = usize

The resulting type after applying the fused multiply-add.
source§

fn mul_add(self, a: usize, b: usize) -> <usize as MulAdd>::Output

Performs the fused multiply-add operation (self * a) + b
","MulAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl MulAddAssign for usize

source§

fn mul_add_assign(&mut self, a: usize, b: usize)

Performs the fused multiply-add assignment operation *self = (*self * a) + b
","MulAddAssign","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl MulAssign<&usize> for usize

source§

fn mul_assign(&mut self, other: &usize)

Performs the *= operation. Read more
","MulAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl MulAssign for usize

source§

fn mul_assign(&mut self, other: usize)

Performs the *= operation. Read more
","MulAssign","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Not for usize

§

type Output = usize

The resulting type after applying the ! operator.
source§

fn not(self) -> usize

Performs the unary ! operation. Read more
","Not","tor_interface::tor_provider::CircuitToken"],["
source§

impl Num for usize

§

type FromStrRadixErr = ParseIntError

source§

fn from_str_radix(s: &str, radix: u32) -> Result<usize, ParseIntError>

Convert from a string and radix (typically 2..=36). Read more
","Num","tor_interface::tor_provider::CircuitToken"],["
source§

impl NumCast for usize

source§

fn from<N>(n: N) -> Option<usize>
where\n N: ToPrimitive,

Creates a number from another value that can be converted into\na primitive via the ToPrimitive trait. If the source value cannot be\nrepresented by the target type, then None is returned. Read more
","NumCast","tor_interface::tor_provider::CircuitToken"],["
§

impl Numeric for usize

§

type Bytes = [u8; 8]

The [u8; N] byte array that stores values of Self.
§

fn to_be_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nbig-endian (network) byte order.
§

fn to_le_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nlittle-endian byte order.
§

fn to_ne_bytes(self) -> <usize as Numeric>::Bytes

Return the memory representation of this number as a byte array in\nnative byte order.
§

fn from_be_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its representation as a byte array in big\nendian.
§

fn from_le_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its representation as a byte array in little\nendian.
§

fn from_ne_bytes(bytes: <usize as Numeric>::Bytes) -> usize

Create a numeric value from its memory representation as a byte array in\nnative endianness.
","Numeric","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Octal for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","Octal","tor_interface::tor_provider::CircuitToken"],["
source§

impl One for usize

source§

fn one() -> usize

Returns the multiplicative identity element of Self, 1. Read more
source§

fn is_one(&self) -> bool

Returns true if self is equal to the multiplicative identity. Read more
source§

fn set_one(&mut self)

Sets self to the multiplicative identity element of Self, 1.
","One","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Ord for usize

source§

fn cmp(&self, other: &usize) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where\n Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where\n Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
","Ord","tor_interface::tor_provider::CircuitToken"],["
source§

impl OverflowingAdd for usize

source§

fn overflowing_add(&self, v: &usize) -> (usize, bool)

Returns a tuple of the sum along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl OverflowingMul for usize

source§

fn overflowing_mul(&self, v: &usize) -> (usize, bool)

Returns a tuple of the product along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingMul","tor_interface::tor_provider::CircuitToken"],["
source§

impl OverflowingSub for usize

source§

fn overflowing_sub(&self, v: &usize) -> (usize, bool)

Returns a tuple of the difference along with a boolean indicating whether an arithmetic overflow would occur.\nIf an overflow would have occurred then the wrapped value is returned.
","OverflowingSub","tor_interface::tor_provider::CircuitToken"],["
§

impl ParseHex for usize

§

fn parse_hex(input: &str) -> Result<usize, ParseError>

Parse the value from hex.
","ParseHex","tor_interface::tor_provider::CircuitToken"],["
source§

impl PartialEq<Value> for usize

source§

fn eq(&self, other: &Value) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl PartialEq for usize

source§

fn eq(&self, other: &usize) -> bool

This method tests for self and other values to be equal, and is used\nby ==.
source§

fn ne(&self, other: &usize) -> bool

This method tests for !=. The default implementation is almost always\nsufficient, and should not be overridden without very good reason.
","PartialEq","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl PartialOrd for usize

source§

fn partial_cmp(&self, other: &usize) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
source§

fn lt(&self, other: &usize) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
source§

fn le(&self, other: &usize) -> bool

This method tests less than or equal to (for self and other) and is used by the <=\noperator. Read more
source§

fn ge(&self, other: &usize) -> bool

This method tests greater than or equal to (for self and other) and is used by the >=\noperator. Read more
source§

fn gt(&self, other: &usize) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
","PartialOrd","tor_interface::tor_provider::CircuitToken"],["
source§

impl PhfBorrow<usize> for usize

source§

fn borrow(&self) -> &usize

Convert a reference to self to a reference to the borrowed type.
","PhfBorrow","tor_interface::tor_provider::CircuitToken"],["
source§

impl PhfHash for usize

source§

fn phf_hash<H>(&self, state: &mut H)
where\n H: Hasher,

Feeds the value into the state given, updating the hasher as necessary.
source§

fn phf_hash_slice<H>(data: &[Self], state: &mut H)
where\n H: Hasher,\n Self: Sized,

Feeds a slice of this type into the state provided.
","PhfHash","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Pow<&'a u16> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u16) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u16>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Pow<&'a u32> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u32) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u32>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Pow<&'a u8> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a u8) -> usize

Returns self to the power rhs. Read more
","Pow<&'a u8>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Pow<&'a usize> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: &'a usize) -> usize

Returns self to the power rhs. Read more
","Pow<&'a usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<U> Pow<PInt<U>> for usize
where\n U: Unsigned + NonZero,

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: PInt<U>) -> <usize as Pow<PInt<U>>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<U, B> Pow<UInt<U, B>> for usize
where\n U: Unsigned,\n B: Bit,

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: UInt<U, B>) -> <usize as Pow<UInt<U, B>>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<UTerm> for usize

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: UTerm) -> <usize as Pow<UTerm>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<Z0> for usize

§

type Output = usize

The result of the exponentiation.
source§

fn powi(self, _: Z0) -> <usize as Pow<Z0>>::Output

This function isn’t used in this crate, but may be useful for others.\nIt is implemented for primitives. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<u16> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u16) -> usize

Returns self to the power rhs. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<u32> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u32) -> usize

Returns self to the power rhs. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<u8> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: u8) -> usize

Returns self to the power rhs. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl Pow<usize> for usize

§

type Output = usize

The result after applying the operator.
source§

fn pow(self, rhs: usize) -> usize

Returns self to the power rhs. Read more
","Pow","tor_interface::tor_provider::CircuitToken"],["
source§

impl PrimInt for usize

source§

fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self. Read more
source§

fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self. Read more
source§

fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation\nof self. Read more
source§

fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation\nof self. Read more
source§

fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation\nof self. Read more
source§

fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation\nof self. Read more
source§

fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, wrapping\nthe truncated bits to the end of the resulting integer. Read more
source§

fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, wrapping\nthe truncated bits to the beginning of the resulting integer. Read more
source§

fn signed_shl(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, filling\nzeros in the least significant bits. Read more
source§

fn signed_shr(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, copying\nthe “sign bit” in the most significant bits even for unsigned types. Read more
source§

fn unsigned_shl(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n, filling\nzeros in the least significant bits. Read more
source§

fn unsigned_shr(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n, filling\nzeros in the most significant bits. Read more
source§

fn swap_bytes(self) -> usize

Reverses the byte order of the integer. Read more
source§

fn reverse_bits(self) -> usize

Reverses the order of bits in the integer. Read more
source§

fn from_be(x: usize) -> usize

Convert an integer from big endian to the target’s endianness. Read more
source§

fn from_le(x: usize) -> usize

Convert an integer from little endian to the target’s endianness. Read more
source§

fn to_be(self) -> usize

Convert self to big endian from the target’s endianness. Read more
source§

fn to_le(self) -> usize

Convert self to little endian from the target’s endianness. Read more
source§

fn pow(self, exp: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring. Read more
","PrimInt","tor_interface::tor_provider::CircuitToken"],["
1.12.0 · source§

impl<'a> Product<&'a usize> for usize

source§

fn product<I>(iter: I) -> usize
where\n I: Iterator<Item = &'a usize>,

Method which takes an iterator and generates Self from the elements by\nmultiplying the items.
","Product<&'a usize>","tor_interface::tor_provider::CircuitToken"],["
1.12.0 · source§

impl Product for usize

source§

fn product<I>(iter: I) -> usize
where\n I: Iterator<Item = usize>,

Method which takes an iterator and generates Self from the elements by\nmultiplying the items.
","Product","tor_interface::tor_provider::CircuitToken"],["
§

impl<R> RangeExt<usize> for R
where\n R: RangeBounds<usize>,

§

fn normalize(\n self,\n start: impl Into<Option<usize>>,\n end: impl Into<Option<usize>>,\n) -> Range<usize>

Normalizes a range-like type to a canonical half-open Range. Read more
§

fn intersection<R2>(self, other: R2) -> Option<Range<usize>>
where\n R2: RangeExt<usize>,

Finds the intersection between two range-likes. The produced Range\nspans only the elements common to both. Read more
§

fn union<R2>(self, other: R2) -> Option<Range<usize>>
where\n R2: RangeExt<usize>,

Finds the union between two range-likes. The produced Range spans all\nelements present in at least one of them. Read more
","RangeExt","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Rem<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the % operator.
source§

fn rem(self, other: &BigInt) -> BigInt

Performs the % operation. Read more
","Rem<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Rem<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the % operator.
source§

fn rem(self, other: &BigUint) -> BigUint

Performs the % operation. Read more
","Rem<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Rem<&usize> for usize

§

type Output = <usize as Rem>::Output

The resulting type after applying the % operator.
source§

fn rem(self, other: &usize) -> <usize as Rem>::Output

Performs the % operation. Read more
","Rem<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Rem<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the % operator.
source§

fn rem(self, other: BigInt) -> BigInt

Performs the % operation. Read more
","Rem","tor_interface::tor_provider::CircuitToken"],["
source§

impl Rem<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the % operator.
source§

fn rem(self, other: BigUint) -> BigUint

Performs the % operation. Read more
","Rem","tor_interface::tor_provider::CircuitToken"],["
1.51.0 · source§

impl Rem<NonZero<usize>> for usize

source§

fn rem(self, other: NonZero<usize>) -> usize

This operation satisfies n % d == n - (n / d) * d, and cannot panic.

\n
§

type Output = usize

The resulting type after applying the % operator.
","Rem>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Rem for usize

This operation satisfies n % d == n - (n / d) * d. The\nresult has the same sign as the left operand.

\n

§Panics

\n

This operation will panic if other == 0.

\n
§

type Output = usize

The resulting type after applying the % operator.
source§

fn rem(self, other: usize) -> usize

Performs the % operation. Read more
","Rem","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> RemAssign<&'a BigUint> for usize

source§

fn rem_assign(&mut self, other: &BigUint)

Performs the %= operation. Read more
","RemAssign<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl RemAssign<&usize> for usize

source§

fn rem_assign(&mut self, other: &usize)

Performs the %= operation. Read more
","RemAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl RemAssign<BigUint> for usize

source§

fn rem_assign(&mut self, other: BigUint)

Performs the %= operation. Read more
","RemAssign","tor_interface::tor_provider::CircuitToken"],["
1.79.0 · source§

impl RemAssign<NonZero<usize>> for usize

source§

fn rem_assign(&mut self, other: NonZero<usize>)

This operation satisfies n % d == n - (n / d) * d, and cannot panic.

\n
","RemAssign>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl RemAssign for usize

source§

fn rem_assign(&mut self, other: usize)

Performs the %= operation. Read more
","RemAssign","tor_interface::tor_provider::CircuitToken"],["
source§

impl Roots for usize

source§

fn nth_root(&self, n: u32) -> usize

Returns the truncated principal nth root of an integer\n– if x >= 0 { ⌊ⁿ√x⌋ } else { ⌈ⁿ√x⌉ } Read more
source§

fn sqrt(&self) -> usize

Returns the truncated principal square root of an integer – ⌊√x⌋ Read more
source§

fn cbrt(&self) -> usize

Returns the truncated principal cube root of an integer –\nif x >= 0 { ⌊∛x⌋ } else { ⌈∛x⌉ } Read more
","Roots","tor_interface::tor_provider::CircuitToken"],["
§

impl RowIndex for usize

§

fn idx(&self, stmt: &Statement<'_>) -> Result<usize, Error>

Returns the index of the appropriate column, or None if no such\ncolumn exists.
","RowIndex","tor_interface::tor_provider::CircuitToken"],["
source§

impl SampleUniform for usize

§

type Sampler = UniformInt<usize>

The UniformSampler implementation supporting type X.
","SampleUniform","tor_interface::tor_provider::CircuitToken"],["
source§

impl Saturating for usize

source§

fn saturating_add(self, v: usize) -> usize

Saturating addition operator.\nReturns a+b, saturating at the numeric bounds instead of overflowing.
source§

fn saturating_sub(self, v: usize) -> usize

Saturating subtraction operator.\nReturns a-b, saturating at the numeric bounds instead of overflowing.
","Saturating","tor_interface::tor_provider::CircuitToken"],["
source§

impl SaturatingAdd for usize

source§

fn saturating_add(&self, v: &usize) -> usize

Saturating addition. Computes self + other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl SaturatingMul for usize

source§

fn saturating_mul(&self, v: &usize) -> usize

Saturating multiplication. Computes self * other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingMul","tor_interface::tor_provider::CircuitToken"],["
source§

impl SaturatingSub for usize

source§

fn saturating_sub(&self, v: &usize) -> usize

Saturating subtraction. Computes self - other, saturating at the relevant high or low boundary of\nthe type.
","SaturatingSub","tor_interface::tor_provider::CircuitToken"],["
§

impl SeekNum for usize

§

fn from_block_byte<T>(\n block: T,\n byte: u8,\n bs: u8,\n) -> Result<usize, OverflowError>
where\n T: Counter,

Try to get position for block number block, byte position inside\nblock byte, and block size bs.
§

fn into_block_byte<T>(self, bs: u8) -> Result<(T, u8), OverflowError>
where\n T: Counter,

Try to get block number and bytes position for given block size bs.
","SeekNum","tor_interface::tor_provider::CircuitToken"],["
source§

impl Serialize for usize

source§

fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where\n S: Serializer,

Serialize this value into the given Serde serializer. Read more
","Serialize","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i128> for usize

§

type Output = <usize as Shl<i128>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i128) -> <usize as Shl<i128>>::Output

Performs the << operation. Read more
","Shl<&i128>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i16> for usize

§

type Output = <usize as Shl<i16>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i16) -> <usize as Shl<i16>>::Output

Performs the << operation. Read more
","Shl<&i16>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i32> for usize

§

type Output = <usize as Shl<i32>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i32) -> <usize as Shl<i32>>::Output

Performs the << operation. Read more
","Shl<&i32>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i64> for usize

§

type Output = <usize as Shl<i64>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i64) -> <usize as Shl<i64>>::Output

Performs the << operation. Read more
","Shl<&i64>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&i8> for usize

§

type Output = <usize as Shl<i8>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &i8) -> <usize as Shl<i8>>::Output

Performs the << operation. Read more
","Shl<&i8>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&isize> for usize

§

type Output = <usize as Shl<isize>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &isize) -> <usize as Shl<isize>>::Output

Performs the << operation. Read more
","Shl<&isize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u128> for usize

§

type Output = <usize as Shl<u128>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u128) -> <usize as Shl<u128>>::Output

Performs the << operation. Read more
","Shl<&u128>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u16> for usize

§

type Output = <usize as Shl<u16>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u16) -> <usize as Shl<u16>>::Output

Performs the << operation. Read more
","Shl<&u16>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u32> for usize

§

type Output = <usize as Shl<u32>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u32) -> <usize as Shl<u32>>::Output

Performs the << operation. Read more
","Shl<&u32>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u64> for usize

§

type Output = <usize as Shl<u64>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u64) -> <usize as Shl<u64>>::Output

Performs the << operation. Read more
","Shl<&u64>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&u8> for usize

§

type Output = <usize as Shl<u8>>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &u8) -> <usize as Shl<u8>>::Output

Performs the << operation. Read more
","Shl<&u8>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<&usize> for usize

§

type Output = <usize as Shl>::Output

The resulting type after applying the << operator.
source§

fn shl(self, other: &usize) -> <usize as Shl>::Output

Performs the << operation. Read more
","Shl<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i128> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i128) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i16> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i16) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i32> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i32) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i64> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i64) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<i8> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: i8) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<isize> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: isize) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u128> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u128) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u16> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u16) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u32> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u32) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u64> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u64) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl<u8> for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: u8) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shl for usize

§

type Output = usize

The resulting type after applying the << operator.
source§

fn shl(self, other: usize) -> usize

Performs the << operation. Read more
","Shl","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i128> for usize

source§

fn shl_assign(&mut self, other: &i128)

Performs the <<= operation. Read more
","ShlAssign<&i128>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i16> for usize

source§

fn shl_assign(&mut self, other: &i16)

Performs the <<= operation. Read more
","ShlAssign<&i16>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i32> for usize

source§

fn shl_assign(&mut self, other: &i32)

Performs the <<= operation. Read more
","ShlAssign<&i32>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i64> for usize

source§

fn shl_assign(&mut self, other: &i64)

Performs the <<= operation. Read more
","ShlAssign<&i64>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&i8> for usize

source§

fn shl_assign(&mut self, other: &i8)

Performs the <<= operation. Read more
","ShlAssign<&i8>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&isize> for usize

source§

fn shl_assign(&mut self, other: &isize)

Performs the <<= operation. Read more
","ShlAssign<&isize>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u128> for usize

source§

fn shl_assign(&mut self, other: &u128)

Performs the <<= operation. Read more
","ShlAssign<&u128>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u16> for usize

source§

fn shl_assign(&mut self, other: &u16)

Performs the <<= operation. Read more
","ShlAssign<&u16>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u32> for usize

source§

fn shl_assign(&mut self, other: &u32)

Performs the <<= operation. Read more
","ShlAssign<&u32>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u64> for usize

source§

fn shl_assign(&mut self, other: &u64)

Performs the <<= operation. Read more
","ShlAssign<&u64>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&u8> for usize

source§

fn shl_assign(&mut self, other: &u8)

Performs the <<= operation. Read more
","ShlAssign<&u8>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShlAssign<&usize> for usize

source§

fn shl_assign(&mut self, other: &usize)

Performs the <<= operation. Read more
","ShlAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i128> for usize

source§

fn shl_assign(&mut self, other: i128)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i16> for usize

source§

fn shl_assign(&mut self, other: i16)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i32> for usize

source§

fn shl_assign(&mut self, other: i32)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i64> for usize

source§

fn shl_assign(&mut self, other: i64)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<i8> for usize

source§

fn shl_assign(&mut self, other: i8)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<isize> for usize

source§

fn shl_assign(&mut self, other: isize)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u128> for usize

source§

fn shl_assign(&mut self, other: u128)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u16> for usize

source§

fn shl_assign(&mut self, other: u16)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u32> for usize

source§

fn shl_assign(&mut self, other: u32)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u64> for usize

source§

fn shl_assign(&mut self, other: u64)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign<u8> for usize

source§

fn shl_assign(&mut self, other: u8)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShlAssign for usize

source§

fn shl_assign(&mut self, other: usize)

Performs the <<= operation. Read more
","ShlAssign","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i128> for usize

§

type Output = <usize as Shr<i128>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i128) -> <usize as Shr<i128>>::Output

Performs the >> operation. Read more
","Shr<&i128>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i16> for usize

§

type Output = <usize as Shr<i16>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i16) -> <usize as Shr<i16>>::Output

Performs the >> operation. Read more
","Shr<&i16>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i32> for usize

§

type Output = <usize as Shr<i32>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i32) -> <usize as Shr<i32>>::Output

Performs the >> operation. Read more
","Shr<&i32>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i64> for usize

§

type Output = <usize as Shr<i64>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i64) -> <usize as Shr<i64>>::Output

Performs the >> operation. Read more
","Shr<&i64>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&i8> for usize

§

type Output = <usize as Shr<i8>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &i8) -> <usize as Shr<i8>>::Output

Performs the >> operation. Read more
","Shr<&i8>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&isize> for usize

§

type Output = <usize as Shr<isize>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &isize) -> <usize as Shr<isize>>::Output

Performs the >> operation. Read more
","Shr<&isize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u128> for usize

§

type Output = <usize as Shr<u128>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u128) -> <usize as Shr<u128>>::Output

Performs the >> operation. Read more
","Shr<&u128>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u16> for usize

§

type Output = <usize as Shr<u16>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u16) -> <usize as Shr<u16>>::Output

Performs the >> operation. Read more
","Shr<&u16>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u32> for usize

§

type Output = <usize as Shr<u32>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u32) -> <usize as Shr<u32>>::Output

Performs the >> operation. Read more
","Shr<&u32>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u64> for usize

§

type Output = <usize as Shr<u64>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u64) -> <usize as Shr<u64>>::Output

Performs the >> operation. Read more
","Shr<&u64>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&u8> for usize

§

type Output = <usize as Shr<u8>>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &u8) -> <usize as Shr<u8>>::Output

Performs the >> operation. Read more
","Shr<&u8>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<&usize> for usize

§

type Output = <usize as Shr>::Output

The resulting type after applying the >> operator.
source§

fn shr(self, other: &usize) -> <usize as Shr>::Output

Performs the >> operation. Read more
","Shr<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i128> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i128) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i16> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i16) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i32> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i32) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i64> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i64) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<i8> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: i8) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<isize> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: isize) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u128> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u128) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u16> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u16) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u32> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u32) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u64> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u64) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr<u8> for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: u8) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Shr for usize

§

type Output = usize

The resulting type after applying the >> operator.
source§

fn shr(self, other: usize) -> usize

Performs the >> operation. Read more
","Shr","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i128> for usize

source§

fn shr_assign(&mut self, other: &i128)

Performs the >>= operation. Read more
","ShrAssign<&i128>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i16> for usize

source§

fn shr_assign(&mut self, other: &i16)

Performs the >>= operation. Read more
","ShrAssign<&i16>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i32> for usize

source§

fn shr_assign(&mut self, other: &i32)

Performs the >>= operation. Read more
","ShrAssign<&i32>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i64> for usize

source§

fn shr_assign(&mut self, other: &i64)

Performs the >>= operation. Read more
","ShrAssign<&i64>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&i8> for usize

source§

fn shr_assign(&mut self, other: &i8)

Performs the >>= operation. Read more
","ShrAssign<&i8>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&isize> for usize

source§

fn shr_assign(&mut self, other: &isize)

Performs the >>= operation. Read more
","ShrAssign<&isize>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u128> for usize

source§

fn shr_assign(&mut self, other: &u128)

Performs the >>= operation. Read more
","ShrAssign<&u128>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u16> for usize

source§

fn shr_assign(&mut self, other: &u16)

Performs the >>= operation. Read more
","ShrAssign<&u16>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u32> for usize

source§

fn shr_assign(&mut self, other: &u32)

Performs the >>= operation. Read more
","ShrAssign<&u32>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u64> for usize

source§

fn shr_assign(&mut self, other: &u64)

Performs the >>= operation. Read more
","ShrAssign<&u64>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&u8> for usize

source§

fn shr_assign(&mut self, other: &u8)

Performs the >>= operation. Read more
","ShrAssign<&u8>","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl ShrAssign<&usize> for usize

source§

fn shr_assign(&mut self, other: &usize)

Performs the >>= operation. Read more
","ShrAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i128> for usize

source§

fn shr_assign(&mut self, other: i128)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i16> for usize

source§

fn shr_assign(&mut self, other: i16)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i32> for usize

source§

fn shr_assign(&mut self, other: i32)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i64> for usize

source§

fn shr_assign(&mut self, other: i64)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<i8> for usize

source§

fn shr_assign(&mut self, other: i8)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<isize> for usize

source§

fn shr_assign(&mut self, other: isize)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u128> for usize

source§

fn shr_assign(&mut self, other: u128)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u16> for usize

source§

fn shr_assign(&mut self, other: u16)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u32> for usize

source§

fn shr_assign(&mut self, other: u32)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u64> for usize

source§

fn shr_assign(&mut self, other: u64)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign<u8> for usize

source§

fn shr_assign(&mut self, other: u8)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl ShrAssign for usize

source§

fn shr_assign(&mut self, other: usize)

Performs the >>= operation. Read more
","ShrAssign","tor_interface::tor_provider::CircuitToken"],["
source§

impl SimdElement for usize

§

type Mask = isize

🔬This is a nightly-only experimental API. (portable_simd)
The mask element type corresponding to this element type.
","SimdElement","tor_interface::tor_provider::CircuitToken"],["
1.15.0 (const: unstable) · source§

impl<T> SliceIndex<[T]> for usize

The methods index and index_mut panic if the index is out of bounds.

\n
§

type Output = T

The output type returned by methods.
source§

fn get(self, slice: &[T]) -> Option<&T>

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a shared reference to the output at this location, if in\nbounds.
source§

fn get_mut(self, slice: &mut [T]) -> Option<&mut T>

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable reference to the output at this location, if in\nbounds.
source§

unsafe fn get_unchecked(self, slice: *const [T]) -> *const T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a pointer to the output at this location, without\nperforming any bounds checking.\nCalling this method with an out-of-bounds index or a dangling slice pointer\nis undefined behavior even if the resulting pointer is not used.
source§

unsafe fn get_unchecked_mut(self, slice: *mut [T]) -> *mut T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable pointer to the output at this location, without\nperforming any bounds checking.\nCalling this method with an out-of-bounds index or a dangling slice pointer\nis undefined behavior even if the resulting pointer is not used.
source§

fn index(self, slice: &[T]) -> &T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a shared reference to the output at this location, panicking\nif out of bounds.
source§

fn index_mut(self, slice: &mut [T]) -> &mut T

🔬This is a nightly-only experimental API. (slice_index_methods)
Returns a mutable reference to the output at this location, panicking\nif out of bounds.
","SliceIndex<[T]>","tor_interface::tor_provider::CircuitToken"],["
§

impl SmartDisplay for usize

§

type Metadata = ()

User-provided metadata type.
§

fn metadata(&self, f: FormatterOptions) -> Metadata<'_, usize>

Compute any information needed to format the value. This must, at a minimum, determine the\nwidth of the value before any padding is added by the formatter. Read more
§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Format the value using the given formatter. This is the same as Display::fmt. Read more
§

fn fmt_with_metadata(\n &self,\n f: &mut Formatter<'_>,\n _metadata: Metadata<'_, Self>,\n) -> Result<(), Error>

Format the value using the given formatter and metadata. The formatted output should have\nthe width indicated by the metadata. This is before any padding is added by the\nformatter. Read more
","SmartDisplay","tor_interface::tor_provider::CircuitToken"],["
source§

impl Step for usize

source§

fn forward(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

fn backward(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
source§

unsafe fn forward_unchecked(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

unsafe fn backward_unchecked(start: usize, n: usize) -> usize

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
source§

fn steps_between(start: &usize, end: &usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the number of successor steps required to get from start to end. Read more
source§

fn forward_checked(start: usize, n: usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the successor\nof self count times. Read more
source§

fn backward_checked(start: usize, n: usize) -> Option<usize>

🔬This is a nightly-only experimental API. (step_trait)
Returns the value that would be obtained by taking the predecessor\nof self count times. Read more
","Step","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Sub<&'a BigInt> for usize

§

type Output = BigInt

The resulting type after applying the - operator.
source§

fn sub(self, other: &BigInt) -> BigInt

Performs the - operation. Read more
","Sub<&'a BigInt>","tor_interface::tor_provider::CircuitToken"],["
source§

impl<'a> Sub<&'a BigUint> for usize

§

type Output = BigUint

The resulting type after applying the - operator.
source§

fn sub(self, other: &BigUint) -> BigUint

Performs the - operation. Read more
","Sub<&'a BigUint>","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Sub<&usize> for usize

§

type Output = <usize as Sub>::Output

The resulting type after applying the - operator.
source§

fn sub(self, other: &usize) -> <usize as Sub>::Output

Performs the - operation. Read more
","Sub<&usize>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Sub<BigInt> for usize

§

type Output = BigInt

The resulting type after applying the - operator.
source§

fn sub(self, other: BigInt) -> BigInt

Performs the - operation. Read more
","Sub","tor_interface::tor_provider::CircuitToken"],["
source§

impl Sub<BigUint> for usize

§

type Output = BigUint

The resulting type after applying the - operator.
source§

fn sub(self, other: BigUint) -> BigUint

Performs the - operation. Read more
","Sub","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Sub for usize

§

type Output = usize

The resulting type after applying the - operator.
source§

fn sub(self, other: usize) -> usize

Performs the - operation. Read more
","Sub","tor_interface::tor_provider::CircuitToken"],["
1.22.0 · source§

impl SubAssign<&usize> for usize

source§

fn sub_assign(&mut self, other: &usize)

Performs the -= operation. Read more
","SubAssign<&usize>","tor_interface::tor_provider::CircuitToken"],["
1.8.0 · source§

impl SubAssign for usize

source§

fn sub_assign(&mut self, other: usize)

Performs the -= operation. Read more
","SubAssign","tor_interface::tor_provider::CircuitToken"],["
1.12.0 · source§

impl<'a> Sum<&'a usize> for usize

source§

fn sum<I>(iter: I) -> usize
where\n I: Iterator<Item = &'a usize>,

Method which takes an iterator and generates Self from the elements by\n“summing up” the items.
","Sum<&'a usize>","tor_interface::tor_provider::CircuitToken"],["
1.12.0 · source§

impl Sum for usize

source§

fn sum<I>(iter: I) -> usize
where\n I: Iterator<Item = usize>,

Method which takes an iterator and generates Self from the elements by\n“summing up” the items.
","Sum","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToBigInt for usize

source§

fn to_bigint(&self) -> Option<BigInt>

Converts the value of self to a BigInt.
","ToBigInt","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToBigUint for usize

source§

fn to_biguint(&self) -> Option<BigUint>

Converts the value of self to a BigUint.
","ToBigUint","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToBytes for usize

§

type Bytes = [u8; 8]

source§

fn to_be_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in big-endian byte order. Read more
source§

fn to_le_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in little-endian byte order. Read more
source§

fn to_ne_bytes(&self) -> <usize as ToBytes>::Bytes

Return the memory representation of this number as a byte array in native byte order. Read more
","ToBytes","tor_interface::tor_provider::CircuitToken"],["
source§

impl ToPrimitive for usize

source§

fn to_isize(&self) -> Option<isize>

Converts the value of self to an isize. If the value cannot be\nrepresented by an isize, then None is returned.
source§

fn to_i8(&self) -> Option<i8>

Converts the value of self to an i8. If the value cannot be\nrepresented by an i8, then None is returned.
source§

fn to_i16(&self) -> Option<i16>

Converts the value of self to an i16. If the value cannot be\nrepresented by an i16, then None is returned.
source§

fn to_i32(&self) -> Option<i32>

Converts the value of self to an i32. If the value cannot be\nrepresented by an i32, then None is returned.
source§

fn to_i64(&self) -> Option<i64>

Converts the value of self to an i64. If the value cannot be\nrepresented by an i64, then None is returned.
source§

fn to_i128(&self) -> Option<i128>

Converts the value of self to an i128. If the value cannot be\nrepresented by an i128 (i64 under the default implementation), then\nNone is returned. Read more
source§

fn to_usize(&self) -> Option<usize>

Converts the value of self to a usize. If the value cannot be\nrepresented by a usize, then None is returned.
source§

fn to_u8(&self) -> Option<u8>

Converts the value of self to a u8. If the value cannot be\nrepresented by a u8, then None is returned.
source§

fn to_u16(&self) -> Option<u16>

Converts the value of self to a u16. If the value cannot be\nrepresented by a u16, then None is returned.
source§

fn to_u32(&self) -> Option<u32>

Converts the value of self to a u32. If the value cannot be\nrepresented by a u32, then None is returned.
source§

fn to_u64(&self) -> Option<u64>

Converts the value of self to a u64. If the value cannot be\nrepresented by a u64, then None is returned.
source§

fn to_u128(&self) -> Option<u128>

Converts the value of self to a u128. If the value cannot be\nrepresented by a u128 (u64 under the default implementation), then\nNone is returned. Read more
source§

fn to_f32(&self) -> Option<f32>

Converts the value of self to an f32. Overflows may map to positive\nor negative inifinity, otherwise None is returned if the value cannot\nbe represented by an f32.
source§

fn to_f64(&self) -> Option<f64>

Converts the value of self to an f64. Overflows may map to positive\nor negative inifinity, otherwise None is returned if the value cannot\nbe represented by an f64. Read more
","ToPrimitive","tor_interface::tor_provider::CircuitToken"],["
§

impl ToSql for usize

§

fn to_sql(&self) -> Result<ToSqlOutput<'_>, Error>

Converts Rust value to SQLite value
","ToSql","tor_interface::tor_provider::CircuitToken"],["
§

impl ToUsize for usize

§

fn to_usize(&self) -> usize

converts self to usize
","ToUsize","tor_interface::tor_provider::CircuitToken"],["
§

impl ToUsize for usize

§

fn to_usize(&self) -> usize

converts self to usize
","ToUsize","tor_interface::tor_provider::CircuitToken"],["
§

impl<const L: i32, const H: i32> TryFrom<BoundedInt32<L, H>> for usize

§

type Error = Error

The type returned in the event of a conversion error.
§

fn try_from(\n val: BoundedInt32<L, H>,\n) -> Result<usize, <usize as TryFrom<BoundedInt32<L, H>>>::Error>

Performs the conversion.
","TryFrom>","tor_interface::tor_provider::CircuitToken"],["
§

impl TryFrom<Length> for usize

§

type Error = Error

The type returned in the event of a conversion error.
§

fn try_from(len: Length) -> Result<usize, Error>

Performs the conversion.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i128> for usize

source§

fn try_from(u: i128) -> Result<usize, <usize as TryFrom<i128>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i16> for usize

source§

fn try_from(u: i16) -> Result<usize, <usize as TryFrom<i16>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i32> for usize

source§

fn try_from(u: i32) -> Result<usize, <usize as TryFrom<i32>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i64> for usize

source§

fn try_from(u: i64) -> Result<usize, <usize as TryFrom<i64>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<i8> for usize

source§

fn try_from(u: i8) -> Result<usize, <usize as TryFrom<i8>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<isize> for usize

source§

fn try_from(u: isize) -> Result<usize, <usize as TryFrom<isize>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<u128> for usize

source§

fn try_from(u: u128) -> Result<usize, <usize as TryFrom<u128>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<u32> for usize

source§

fn try_from(value: u32) -> Result<usize, <usize as TryFrom<u32>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
1.34.0 · source§

impl TryFrom<u64> for usize

source§

fn try_from(value: u64) -> Result<usize, <usize as TryFrom<u64>>::Error>

Try to create the target number type from a source\nnumber type. This returns an error if the source value\nis outside of the range of the target type.

\n
§

type Error = TryFromIntError

The type returned in the event of a conversion error.
","TryFrom","tor_interface::tor_provider::CircuitToken"],["
§

impl Unsigned for usize

§

fn is_power_of_two(self) -> bool

Returns true if and only if self == 2^k for some k.
§

fn next_power_of_two(self) -> usize

Returns the smallest power of two greater than or equal to self. Read more
§

fn checked_next_power_of_two(self) -> Option<usize>

Returns the smallest power of two greater than or equal to n. If the\nnext power of two is greater than the type’s maximum value, None is\nreturned, otherwise the power of two is wrapped in Some.
","Unsigned","tor_interface::tor_provider::CircuitToken"],["
1.42.0 · source§

impl UpperExp for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","UpperExp","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl UpperHex for usize

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
","UpperHex","tor_interface::tor_provider::CircuitToken"],["
§

impl Value for usize

§

fn record(&self, key: &Field, visitor: &mut dyn Visit)

Visits this value with the given Visitor.
","Value","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingAdd for usize

source§

fn wrapping_add(&self, v: &usize) -> usize

Wrapping (modular) addition. Computes self + other, wrapping around at the boundary of\nthe type.
","WrappingAdd","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingMul for usize

source§

fn wrapping_mul(&self, v: &usize) -> usize

Wrapping (modular) multiplication. Computes self * other, wrapping around at the boundary\nof the type.
","WrappingMul","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingNeg for usize

source§

fn wrapping_neg(&self) -> usize

Wrapping (modular) negation. Computes -self,\nwrapping around at the boundary of the type. Read more
","WrappingNeg","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingShl for usize

source§

fn wrapping_shl(&self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs),\nwhere mask removes any high order bits of rhs that would\ncause the shift to exceed the bitwidth of the type. Read more
","WrappingShl","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingShr for usize

source§

fn wrapping_shr(&self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs),\nwhere mask removes any high order bits of rhs that would\ncause the shift to exceed the bitwidth of the type. Read more
","WrappingShr","tor_interface::tor_provider::CircuitToken"],["
source§

impl WrappingSub for usize

source§

fn wrapping_sub(&self, v: &usize) -> usize

Wrapping (modular) subtraction. Computes self - other, wrapping around at the boundary\nof the type.
","WrappingSub","tor_interface::tor_provider::CircuitToken"],["
§

impl WriteHex for usize

§

fn write_hex<W>(&self, writer: W) -> Result<(), Error>
where\n W: Write,

Write the value as hex.
","WriteHex","tor_interface::tor_provider::CircuitToken"],["
§

impl Writeable for usize

§

fn write_to<W>(&self, sink: &mut W) -> Result<(), Error>
where\n W: Write + ?Sized,

Writes a string to the given sink. Errors from the sink are bubbled up.\nThe default implementation delegates to write_to_parts, and discards any\nPart annotations.
§

fn writeable_length_hint(&self) -> LengthHint

Returns a hint for the number of UTF-8 bytes that will be written to the sink. Read more
§

fn write_to_parts<S>(&self, sink: &mut S) -> Result<(), Error>
where\n S: PartsWrite + ?Sized,

Write bytes and Part annotations to the given sink. Errors from the\nsink are bubbled up. The default implementation delegates to write_to,\nand doesn’t produce any Part annotations.
§

fn write_to_string(&self) -> Cow<'_, str>

Creates a new String with the data from this Writeable. Like ToString,\nbut smaller and faster. Read more
§

fn writeable_cmp_bytes(&self, other: &[u8]) -> Ordering

Compares the contents of this Writeable to the given bytes\nwithout allocating a String to hold the Writeable contents. Read more
","Writeable","tor_interface::tor_provider::CircuitToken"],["
§

impl<'a> Yokeable<'a> for usize

§

type Output = usize

This type MUST be Self with the 'static replaced with 'a, i.e. Self<'a>
§

fn transform(&self) -> &<usize as Yokeable<'a>>::Output

This method must cast self between &'a Self<'static> and &'a Self<'a>. Read more
§

fn transform_owned(self) -> <usize as Yokeable<'a>>::Output

This method must cast self between Self<'static> and Self<'a>. Read more
§

unsafe fn make(this: <usize as Yokeable<'a>>::Output) -> usize

This method can be used to cast away Self<'a>’s lifetime. Read more
§

fn transform_mut<F>(&'a mut self, f: F)
where\n F: 'static + for<'b> FnOnce(&'b mut <usize as Yokeable<'a>>::Output),

This method must cast self between &'a mut Self<'static> and &'a mut Self<'a>,\nand pass it to f. Read more
","Yokeable<'a>","tor_interface::tor_provider::CircuitToken"],["
source§

impl Zero for usize

source§

fn zero() -> usize

Returns the additive identity element of Self, 0. Read more
source§

fn is_zero(&self) -> bool

Returns true if self is equal to the additive identity.
source§

fn set_zero(&mut self)

Sets self to the additive identity element of Self, 0.
","Zero","tor_interface::tor_provider::CircuitToken"],["
§

impl<'a> ZeroFrom<'a, usize> for usize

§

fn zero_from(this: &'a usize) -> usize

Clone the other C into a struct that may retain references into C.
","ZeroFrom<'a, usize>","tor_interface::tor_provider::CircuitToken"],["
§

impl<'a> ZeroMapKV<'a> for usize

§

type Container = FlexZeroVec<'a>

The container that can be used with this type: [ZeroVec] or [VarZeroVec].
§

type Slice = FlexZeroSlice

§

type GetType = [u8]

The type produced by Container::get() Read more
§

type OwnedType = usize

The type produced by Container::replace() and Container::remove(),\nalso used during deserialization. If Self is human readable serialized,\ndeserializing to Self::OwnedType should produce the same value once\npassed through Self::owned_as_self() Read more
","ZeroMapKV<'a>","tor_interface::tor_provider::CircuitToken"],["
source§

impl usize

1.43.0 · source

pub const MIN: usize = 0usize

The smallest value that can be represented by this integer type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MIN, 0);
\n
1.43.0 · source

pub const MAX: usize = 18_446_744_073_709_551_615usize

The largest value that can be represented by this integer type\n(264 − 1 on 64-bit targets).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MAX, 18446744073709551615);
\n
1.53.0 · source

pub const BITS: u32 = 64u32

The size of this integer type in bits.

\n
§Examples
\n
assert_eq!(usize::BITS, 64);
\n
1.0.0 (const: 1.32.0) · source

pub const fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b01001100usize;\n\nassert_eq!(n.count_ones(), 3);
\n
1.0.0 (const: 1.32.0) · source

pub const fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::MAX.count_zeros(), 0);
\n
1.0.0 (const: 1.32.0) · source

pub const fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of self.

\n

Depending on what you’re doing with the value, you might also be interested in the\nilog2 function which returns a consistent number, even if the type widens.

\n
§Examples
\n

Basic usage:

\n\n
let n = usize::MAX >> 2;\n\nassert_eq!(n.leading_zeros(), 2);
\n
1.0.0 (const: 1.32.0) · source

pub const fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation\nof self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b0101000usize;\n\nassert_eq!(n.trailing_zeros(), 3);
\n
1.46.0 (const: 1.46.0) · source

pub const fn leading_ones(self) -> u32

Returns the number of leading ones in the binary representation of self.

\n
§Examples
\n

Basic usage:

\n\n
let n = !(usize::MAX >> 2);\n\nassert_eq!(n.leading_ones(), 2);
\n
1.46.0 (const: 1.46.0) · source

pub const fn trailing_ones(self) -> u32

Returns the number of trailing ones in the binary representation\nof self.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0b1010111usize;\n\nassert_eq!(n.trailing_ones(), 3);
\n
source

pub const fn cast_signed(self) -> isize

🔬This is a nightly-only experimental API. (integer_sign_cast)

Returns the bit pattern of self reinterpreted as a signed integer of the same size.

\n

This produces the same result as an as cast, but ensures that the bit-width remains\nthe same.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(integer_sign_cast)]\n\nlet n = usize::MAX;\n\nassert_eq!(n.cast_signed(), -1isize);
\n
1.0.0 (const: 1.32.0) · source

pub const fn rotate_left(self, n: u32) -> usize

Shifts the bits to the left by a specified amount, n,\nwrapping the truncated bits to the end of the resulting integer.

\n

Please note this isn’t the same operation as the << shifting operator!

\n
§Examples
\n

Basic usage:

\n\n
let n = 0xaa00000000006e1usize;\nlet m = 0x6e10aa;\n\nassert_eq!(n.rotate_left(12), m);
\n
1.0.0 (const: 1.32.0) · source

pub const fn rotate_right(self, n: u32) -> usize

Shifts the bits to the right by a specified amount, n,\nwrapping the truncated bits to the beginning of the resulting\ninteger.

\n

Please note this isn’t the same operation as the >> shifting operator!

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x6e10aausize;\nlet m = 0xaa00000000006e1;\n\nassert_eq!(n.rotate_right(12), m);
\n
1.0.0 (const: 1.32.0) · source

pub const fn swap_bytes(self) -> usize

Reverses the byte order of the integer.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1234567890123456usize;\nlet m = n.swap_bytes();\n\nassert_eq!(m, 0x5634129078563412);
\n
1.37.0 (const: 1.37.0) · source

pub const fn reverse_bits(self) -> usize

Reverses the order of bits in the integer. The least significant bit becomes the most significant bit,\nsecond least-significant bit becomes second most-significant bit, etc.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1234567890123456usize;\nlet m = n.reverse_bits();\n\nassert_eq!(m, 0x6a2c48091e6a2c48);\nassert_eq!(0, 0usize.reverse_bits());
\n
1.0.0 (const: 1.32.0) · source

pub const fn from_be(x: usize) -> usize

Converts an integer from big endian to the target’s endianness.

\n

On big endian this is a no-op. On little endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"big\") {\n    assert_eq!(usize::from_be(n), n)\n} else {\n    assert_eq!(usize::from_be(n), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn from_le(x: usize) -> usize

Converts an integer from little endian to the target’s endianness.

\n

On little endian this is a no-op. On big endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"little\") {\n    assert_eq!(usize::from_le(n), n)\n} else {\n    assert_eq!(usize::from_le(n), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn to_be(self) -> usize

Converts self to big endian from the target’s endianness.

\n

On big endian this is a no-op. On little endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"big\") {\n    assert_eq!(n.to_be(), n)\n} else {\n    assert_eq!(n.to_be(), n.swap_bytes())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn to_le(self) -> usize

Converts self to little endian from the target’s endianness.

\n

On little endian this is a no-op. On big endian the bytes are\nswapped.

\n
§Examples
\n

Basic usage:

\n\n
let n = 0x1Ausize;\n\nif cfg!(target_endian = \"little\") {\n    assert_eq!(n.to_le(), n)\n} else {\n    assert_eq!(n.to_le(), n.swap_bytes())\n}
\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_add(self, rhs: usize) -> Option<usize>

Checked integer addition. Computes self + rhs, returning None\nif overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!((usize::MAX - 2).checked_add(1), Some(usize::MAX - 1));\nassert_eq!((usize::MAX - 2).checked_add(3), None);
\n
source

pub const fn strict_add(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer addition. Computes self + rhs, panicking\nif overflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!((usize::MAX - 2).strict_add(1), usize::MAX - 1);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (usize::MAX - 2).strict_add(3);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_add(self, rhs: usize) -> usize

Unchecked integer addition. Computes self + rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_add(y) is semantically equivalent to calling\nx.checked_add(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_add.

\n
§Safety
\n

This results in undefined behavior when\nself + rhs > usize::MAX or self + rhs < usize::MIN,\ni.e. when checked_add would return None.

\n
1.66.0 (const: 1.66.0) · source

pub const fn checked_add_signed(self, rhs: isize) -> Option<usize>

Checked addition with a signed integer. Computes self + rhs,\nreturning None if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.checked_add_signed(2), Some(3));\nassert_eq!(1usize.checked_add_signed(-2), None);\nassert_eq!((usize::MAX - 2).checked_add_signed(3), None);
\n
source

pub const fn strict_add_signed(self, rhs: isize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict addition with a signed integer. Computes self + rhs,\npanicking if overflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(1usize.strict_add_signed(2), 3);
\n

The following panic because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 1usize.strict_add_signed(-2);
\n\n
#![feature(strict_overflow_ops)]\nlet _ = (usize::MAX - 2).strict_add_signed(3);
\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_sub(self, rhs: usize) -> Option<usize>

Checked integer subtraction. Computes self - rhs, returning\nNone if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.checked_sub(1), Some(0));\nassert_eq!(0usize.checked_sub(1), None);
\n
source

pub const fn strict_sub(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer subtraction. Computes self - rhs, panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(1usize.strict_sub(1), 0);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0usize.strict_sub(1);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_sub(self, rhs: usize) -> usize

Unchecked integer subtraction. Computes self - rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_sub(y) is semantically equivalent to calling\nx.checked_sub(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_sub.

\n

If you find yourself writing code like this:

\n\n
if foo >= bar {\n    // SAFETY: just checked it will not overflow\n    let diff = unsafe { foo.unchecked_sub(bar) };\n    // ... use diff ...\n}
\n

Consider changing it to

\n\n
if let Some(diff) = foo.checked_sub(bar) {\n    // ... use diff ...\n}
\n

As that does exactly the same thing – including telling the optimizer\nthat the subtraction cannot overflow – but avoids needing unsafe.

\n
§Safety
\n

This results in undefined behavior when\nself - rhs > usize::MAX or self - rhs < usize::MIN,\ni.e. when checked_sub would return None.

\n
1.0.0 (const: 1.47.0) · source

pub const fn checked_mul(self, rhs: usize) -> Option<usize>

Checked integer multiplication. Computes self * rhs, returning\nNone if overflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_mul(1), Some(5));\nassert_eq!(usize::MAX.checked_mul(2), None);
\n
source

pub const fn strict_mul(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer multiplication. Computes self * rhs, panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(5usize.strict_mul(1), 5);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = usize::MAX.strict_mul(2);
\n
1.79.0 (const: 1.79.0) · source

pub const unsafe fn unchecked_mul(self, rhs: usize) -> usize

Unchecked integer multiplication. Computes self * rhs, assuming overflow\ncannot occur.

\n

Calling x.unchecked_mul(y) is semantically equivalent to calling\nx.checked_mul(y).unwrap_unchecked().

\n

If you’re just trying to avoid the panic in debug mode, then do not\nuse this. Instead, you’re looking for wrapping_mul.

\n
§Safety
\n

This results in undefined behavior when\nself * rhs > usize::MAX or self * rhs < usize::MIN,\ni.e. when checked_mul would return None.

\n
1.0.0 (const: 1.52.0) · source

pub const fn checked_div(self, rhs: usize) -> Option<usize>

Checked integer division. Computes self / rhs, returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.checked_div(2), Some(64));\nassert_eq!(1usize.checked_div(0), None);
\n
source

pub const fn strict_div(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer division. Computes self / rhs.\nStrict division on unsigned types is just normal division.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_div(10), 10);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (1usize).strict_div(0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn checked_div_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean division. Computes self.div_euclid(rhs), returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.checked_div_euclid(2), Some(64));\nassert_eq!(1usize.checked_div_euclid(0), None);
\n
source

pub const fn strict_div_euclid(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict Euclidean division. Computes self.div_euclid(rhs).\nStrict division on unsigned types is just normal division.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.strict_div(rhs).

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_div_euclid(10), 10);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = (1usize).strict_div_euclid(0);
\n
1.7.0 (const: 1.52.0) · source

pub const fn checked_rem(self, rhs: usize) -> Option<usize>

Checked integer remainder. Computes self % rhs, returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_rem(2), Some(1));\nassert_eq!(5usize.checked_rem(0), None);
\n
source

pub const fn strict_rem(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict integer remainder. Computes self % rhs.\nStrict remainder calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_rem(10), 0);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 5usize.strict_rem(0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn checked_rem_euclid(self, rhs: usize) -> Option<usize>

Checked Euclidean modulo. Computes self.rem_euclid(rhs), returning None\nif rhs == 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.checked_rem_euclid(2), Some(1));\nassert_eq!(5usize.checked_rem_euclid(0), None);
\n
source

pub const fn strict_rem_euclid(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict Euclidean modulo. Computes self.rem_euclid(rhs).\nStrict modulo calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way overflow could ever happen.\nThis function exists, so that all operations\nare accounted for in the strict operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.strict_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(100usize.strict_rem_euclid(10), 0);
\n

The following panics because of division by zero:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 5usize.strict_rem_euclid(0);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog(self, base: usize) -> u32

Returns the logarithm of the number with respect to an arbitrary base,\nrounded down.

\n

This method might not be optimized owing to implementation details;\nilog2 can produce results more efficiently for base 2, and ilog10\ncan produce results more efficiently for base 10.

\n
§Panics
\n

This function will panic if self is zero, or if base is less than 2.

\n
§Examples
\n
assert_eq!(5usize.ilog(5), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog2(self) -> u32

Returns the base 2 logarithm of the number, rounded down.

\n
§Panics
\n

This function will panic if self is zero.

\n
§Examples
\n
assert_eq!(2usize.ilog2(), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn ilog10(self) -> u32

Returns the base 10 logarithm of the number, rounded down.

\n
§Panics
\n

This function will panic if self is zero.

\n
§Example
\n
assert_eq!(10usize.ilog10(), 1);
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog(self, base: usize) -> Option<u32>

Returns the logarithm of the number with respect to an arbitrary base,\nrounded down.

\n

Returns None if the number is zero, or if the base is not at least 2.

\n

This method might not be optimized owing to implementation details;\nchecked_ilog2 can produce results more efficiently for base 2, and\nchecked_ilog10 can produce results more efficiently for base 10.

\n
§Examples
\n
assert_eq!(5usize.checked_ilog(5), Some(1));
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog2(self) -> Option<u32>

Returns the base 2 logarithm of the number, rounded down.

\n

Returns None if the number is zero.

\n
§Examples
\n
assert_eq!(2usize.checked_ilog2(), Some(1));
\n
1.67.0 (const: 1.67.0) · source

pub const fn checked_ilog10(self) -> Option<u32>

Returns the base 10 logarithm of the number, rounded down.

\n

Returns None if the number is zero.

\n
§Examples
\n
assert_eq!(10usize.checked_ilog10(), Some(1));
\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_neg(self) -> Option<usize>

Checked negation. Computes -self, returning None unless self == 0.

\n

Note that negating any positive integer will overflow.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0usize.checked_neg(), Some(0));\nassert_eq!(1usize.checked_neg(), None);
\n
source

pub const fn strict_neg(self) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict negation. Computes -self, panicking unless self == 0.

\n

Note that negating any positive integer will overflow.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0usize.strict_neg(), 0);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 1usize.strict_neg();
\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_shl(self, rhs: u32) -> Option<usize>

Checked shift left. Computes self << rhs, returning None\nif rhs is larger than or equal to the number of bits in self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0x1usize.checked_shl(4), Some(0x10));\nassert_eq!(0x10usize.checked_shl(129), None);
\n
source

pub const fn strict_shl(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict shift left. Computes self << rhs, panicking if rhs is larger\nthan or equal to the number of bits in self.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0x1usize.strict_shl(4), 0x10);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0x10usize.strict_shl(129);
\n
source

pub const unsafe fn unchecked_shl(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (unchecked_shifts)

Unchecked shift left. Computes self << rhs, assuming that\nrhs is less than the number of bits in self.

\n
§Safety
\n

This results in undefined behavior if rhs is larger than\nor equal to the number of bits in self,\ni.e. when checked_shl would return None.

\n
1.7.0 (const: 1.47.0) · source

pub const fn checked_shr(self, rhs: u32) -> Option<usize>

Checked shift right. Computes self >> rhs, returning None\nif rhs is larger than or equal to the number of bits in self.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0x10usize.checked_shr(4), Some(0x1));\nassert_eq!(0x10usize.checked_shr(129), None);
\n
source

pub const fn strict_shr(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict shift right. Computes self >> rhs, panicking rhs is\nlarger than or equal to the number of bits in self.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(0x10usize.strict_shr(4), 0x1);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = 0x10usize.strict_shr(129);
\n
source

pub const unsafe fn unchecked_shr(self, rhs: u32) -> usize

🔬This is a nightly-only experimental API. (unchecked_shifts)

Unchecked shift right. Computes self >> rhs, assuming that\nrhs is less than the number of bits in self.

\n
§Safety
\n

This results in undefined behavior if rhs is larger than\nor equal to the number of bits in self,\ni.e. when checked_shr would return None.

\n
1.34.0 (const: 1.50.0) · source

pub const fn checked_pow(self, exp: u32) -> Option<usize>

Checked exponentiation. Computes self.pow(exp), returning None if\noverflow occurred.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.checked_pow(5), Some(32));\nassert_eq!(usize::MAX.checked_pow(2), None);
\n
source

pub const fn strict_pow(self, exp: u32) -> usize

🔬This is a nightly-only experimental API. (strict_overflow_ops)

Strict exponentiation. Computes self.pow(exp), panicking if\noverflow occurred.

\n
§Panics
§Overflow behavior
\n

This function will always panic on overflow, regardless of whether overflow checks are enabled.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(strict_overflow_ops)]\nassert_eq!(2usize.strict_pow(5), 32);
\n

The following panics because of overflow:

\n\n
#![feature(strict_overflow_ops)]\nlet _ = usize::MAX.strict_pow(2);
\n
1.0.0 (const: 1.47.0) · source

pub const fn saturating_add(self, rhs: usize) -> usize

Saturating integer addition. Computes self + rhs, saturating at\nthe numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.saturating_add(1), 101);\nassert_eq!(usize::MAX.saturating_add(127), usize::MAX);
\n
1.66.0 (const: 1.66.0) · source

pub const fn saturating_add_signed(self, rhs: isize) -> usize

Saturating addition with a signed integer. Computes self + rhs,\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.saturating_add_signed(2), 3);\nassert_eq!(1usize.saturating_add_signed(-2), 0);\nassert_eq!((usize::MAX - 2).saturating_add_signed(4), usize::MAX);
\n
1.0.0 (const: 1.47.0) · source

pub const fn saturating_sub(self, rhs: usize) -> usize

Saturating integer subtraction. Computes self - rhs, saturating\nat the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.saturating_sub(27), 73);\nassert_eq!(13usize.saturating_sub(127), 0);
\n
1.7.0 (const: 1.47.0) · source

pub const fn saturating_mul(self, rhs: usize) -> usize

Saturating integer multiplication. Computes self * rhs,\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.saturating_mul(10), 20);\nassert_eq!((usize::MAX).saturating_mul(10), usize::MAX);
\n
1.58.0 (const: 1.58.0) · source

pub const fn saturating_div(self, rhs: usize) -> usize

Saturating integer division. Computes self / rhs, saturating at the\nnumeric bounds instead of overflowing.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(5usize.saturating_div(2), 2);\n
\n
1.34.0 (const: 1.50.0) · source

pub const fn saturating_pow(self, exp: u32) -> usize

Saturating integer exponentiation. Computes self.pow(exp),\nsaturating at the numeric bounds instead of overflowing.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(4usize.saturating_pow(3), 64);\nassert_eq!(usize::MAX.saturating_pow(2), usize::MAX);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_add(self, rhs: usize) -> usize

Wrapping (modular) addition. Computes self + rhs,\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(200usize.wrapping_add(55), 255);\nassert_eq!(200usize.wrapping_add(usize::MAX), 199);
\n
1.66.0 (const: 1.66.0) · source

pub const fn wrapping_add_signed(self, rhs: isize) -> usize

Wrapping (modular) addition with a signed integer. Computes\nself + rhs, wrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.wrapping_add_signed(2), 3);\nassert_eq!(1usize.wrapping_add_signed(-2), usize::MAX);\nassert_eq!((usize::MAX - 2).wrapping_add_signed(4), 1);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_sub(self, rhs: usize) -> usize

Wrapping (modular) subtraction. Computes self - rhs,\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_sub(100), 0);\nassert_eq!(100usize.wrapping_sub(usize::MAX), 101);
\n
1.0.0 (const: 1.32.0) · source

pub const fn wrapping_mul(self, rhs: usize) -> usize

Wrapping (modular) multiplication. Computes self * rhs, wrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u8 is used here.

\n\n
assert_eq!(10u8.wrapping_mul(12), 120);\nassert_eq!(25u8.wrapping_mul(12), 44);
\n
1.2.0 (const: 1.52.0) · source

pub const fn wrapping_div(self, rhs: usize) -> usize

Wrapping (modular) division. Computes self / rhs.\nWrapped division on unsigned types is just normal division.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_div(10), 10);
\n
1.38.0 (const: 1.52.0) · source

pub const fn wrapping_div_euclid(self, rhs: usize) -> usize

Wrapping Euclidean division. Computes self.div_euclid(rhs).\nWrapped division on unsigned types is just normal division.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.wrapping_div(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_div_euclid(10), 10);
\n
1.2.0 (const: 1.52.0) · source

pub const fn wrapping_rem(self, rhs: usize) -> usize

Wrapping (modular) remainder. Computes self % rhs.\nWrapped remainder calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_rem(10), 0);
\n
1.38.0 (const: 1.52.0) · source

pub const fn wrapping_rem_euclid(self, rhs: usize) -> usize

Wrapping Euclidean modulo. Computes self.rem_euclid(rhs).\nWrapped modulo calculation on unsigned types is\njust the regular remainder calculation.\nThere’s no way wrapping could ever happen.\nThis function exists, so that all operations\nare accounted for in the wrapping operations.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.wrapping_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.wrapping_rem_euclid(10), 0);
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_neg(self) -> usize

Wrapping (modular) negation. Computes -self,\nwrapping around at the boundary of the type.

\n

Since unsigned types do not have negative equivalents\nall applications of this function will wrap (except for -0).\nFor values smaller than the corresponding signed type’s maximum\nthe result is the same as casting the corresponding signed value.\nAny larger values are equivalent to MAX + 1 - (val - MAX - 1) where\nMAX is the corresponding signed type’s maximum.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(0_usize.wrapping_neg(), 0);\nassert_eq!(usize::MAX.wrapping_neg(), 1);\nassert_eq!(13_usize.wrapping_neg(), (!13) + 1);\nassert_eq!(42_usize.wrapping_neg(), !(42 - 1));
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_shl(self, rhs: u32) -> usize

Panic-free bitwise shift-left; yields self << mask(rhs),\nwhere mask removes any high-order bits of rhs that\nwould cause the shift to exceed the bitwidth of the type.

\n

Note that this is not the same as a rotate-left; the\nRHS of a wrapping shift-left is restricted to the range\nof the type, rather than the bits shifted out of the LHS\nbeing returned to the other end. The primitive integer\ntypes all implement a rotate_left function,\nwhich may be what you want instead.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.wrapping_shl(7), 128);\nassert_eq!(1usize.wrapping_shl(128), 1);
\n
1.2.0 (const: 1.32.0) · source

pub const fn wrapping_shr(self, rhs: u32) -> usize

Panic-free bitwise shift-right; yields self >> mask(rhs),\nwhere mask removes any high-order bits of rhs that\nwould cause the shift to exceed the bitwidth of the type.

\n

Note that this is not the same as a rotate-right; the\nRHS of a wrapping shift-right is restricted to the range\nof the type, rather than the bits shifted out of the LHS\nbeing returned to the other end. The primitive integer\ntypes all implement a rotate_right function,\nwhich may be what you want instead.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(128usize.wrapping_shr(7), 1);\nassert_eq!(128usize.wrapping_shr(128), 128);
\n
1.34.0 (const: 1.50.0) · source

pub const fn wrapping_pow(self, exp: u32) -> usize

Wrapping (modular) exponentiation. Computes self.pow(exp),\nwrapping around at the boundary of the type.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(3usize.wrapping_pow(5), 243);\nassert_eq!(3u8.wrapping_pow(6), 217);
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_add(self, rhs: usize) -> (usize, bool)

Calculates self + rhs

\n

Returns a tuple of the addition along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_add(2), (7, false));\nassert_eq!(usize::MAX.overflowing_add(1), (0, true));
\n
source

pub const fn carrying_add(self, rhs: usize, carry: bool) -> (usize, bool)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates self + rhs + carry and returns a tuple containing\nthe sum and the output carry.

\n

Performs “ternary addition” of two integer operands and a carry-in\nbit, and returns an output integer and a carry-out bit. This allows\nchaining together multiple additions to create a wider addition, and\ncan be useful for bignum addition.

\n

This can be thought of as a 64-bit “full adder”, in the electronics sense.

\n

If the input carry is false, this method is equivalent to\noverflowing_add, and the output carry is\nequal to the overflow flag. Note that although carry and overflow\nflags are similar for unsigned integers, they are different for\nsigned integers.

\n
§Examples
\n
#![feature(bigint_helper_methods)]\n\n//    3  MAX    (a = 3 × 2^64 + 2^64 - 1)\n// +  5    7    (b = 5 × 2^64 + 7)\n// ---------\n//    9    6    (sum = 9 × 2^64 + 6)\n\nlet (a1, a0): (usize, usize) = (3, usize::MAX);\nlet (b1, b0): (usize, usize) = (5, 7);\nlet carry0 = false;\n\nlet (sum0, carry1) = a0.carrying_add(b0, carry0);\nassert_eq!(carry1, true);\nlet (sum1, carry2) = a1.carrying_add(b1, carry1);\nassert_eq!(carry2, false);\n\nassert_eq!((sum1, sum0), (9, 6));
\n
1.66.0 (const: 1.66.0) · source

pub const fn overflowing_add_signed(self, rhs: isize) -> (usize, bool)

Calculates self + rhs with a signed rhs

\n

Returns a tuple of the addition along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(1usize.overflowing_add_signed(2), (3, false));\nassert_eq!(1usize.overflowing_add_signed(-2), (usize::MAX, true));\nassert_eq!((usize::MAX - 2).overflowing_add_signed(4), (1, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_sub(self, rhs: usize) -> (usize, bool)

Calculates self - rhs

\n

Returns a tuple of the subtraction along with a boolean indicating\nwhether an arithmetic overflow would occur. If an overflow would\nhave occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_sub(2), (3, false));\nassert_eq!(0usize.overflowing_sub(1), (usize::MAX, true));
\n
source

pub const fn borrowing_sub(self, rhs: usize, borrow: bool) -> (usize, bool)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates selfrhsborrow and returns a tuple\ncontaining the difference and the output borrow.

\n

Performs “ternary subtraction” by subtracting both an integer\noperand and a borrow-in bit from self, and returns an output\ninteger and a borrow-out bit. This allows chaining together multiple\nsubtractions to create a wider subtraction, and can be useful for\nbignum subtraction.

\n
§Examples
\n
#![feature(bigint_helper_methods)]\n\n//    9    6    (a = 9 × 2^64 + 6)\n// -  5    7    (b = 5 × 2^64 + 7)\n// ---------\n//    3  MAX    (diff = 3 × 2^64 + 2^64 - 1)\n\nlet (a1, a0): (usize, usize) = (9, 6);\nlet (b1, b0): (usize, usize) = (5, 7);\nlet borrow0 = false;\n\nlet (diff0, borrow1) = a0.borrowing_sub(b0, borrow0);\nassert_eq!(borrow1, true);\nlet (diff1, borrow2) = a1.borrowing_sub(b1, borrow1);\nassert_eq!(borrow2, false);\n\nassert_eq!((diff1, diff0), (3, usize::MAX));
\n
1.60.0 (const: 1.60.0) · source

pub const fn abs_diff(self, other: usize) -> usize

Computes the absolute difference between self and other.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(100usize.abs_diff(80), 20usize);\nassert_eq!(100usize.abs_diff(110), 10usize);
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_mul(self, rhs: usize) -> (usize, bool)

Calculates the multiplication of self and rhs.

\n

Returns a tuple of the multiplication along with a boolean\nindicating whether an arithmetic overflow would occur. If an\noverflow would have occurred then the wrapped value is returned.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
assert_eq!(5u32.overflowing_mul(2), (10, false));\nassert_eq!(1_000_000_000u32.overflowing_mul(10), (1410065408, true));
\n
1.7.0 (const: 1.52.0) · source

pub const fn overflowing_div(self, rhs: usize) -> (usize, bool)

Calculates the divisor when self is divided by rhs.

\n

Returns a tuple of the divisor along with a boolean indicating\nwhether an arithmetic overflow would occur. Note that for unsigned\nintegers overflow never occurs, so the second value is always\nfalse.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_div(2), (2, false));
\n
1.38.0 (const: 1.52.0) · source

pub const fn overflowing_div_euclid(self, rhs: usize) -> (usize, bool)

Calculates the quotient of Euclidean division self.div_euclid(rhs).

\n

Returns a tuple of the divisor along with a boolean indicating\nwhether an arithmetic overflow would occur. Note that for unsigned\nintegers overflow never occurs, so the second value is always\nfalse.\nSince, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self.overflowing_div(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_div_euclid(2), (2, false));
\n
1.7.0 (const: 1.52.0) · source

pub const fn overflowing_rem(self, rhs: usize) -> (usize, bool)

Calculates the remainder when self is divided by rhs.

\n

Returns a tuple of the remainder after dividing along with a boolean\nindicating whether an arithmetic overflow would occur. Note that for\nunsigned integers overflow never occurs, so the second value is\nalways false.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_rem(2), (1, false));
\n
1.38.0 (const: 1.52.0) · source

pub const fn overflowing_rem_euclid(self, rhs: usize) -> (usize, bool)

Calculates the remainder self.rem_euclid(rhs) as if by Euclidean division.

\n

Returns a tuple of the modulo after dividing along with a boolean\nindicating whether an arithmetic overflow would occur. Note that for\nunsigned integers overflow never occurs, so the second value is\nalways false.\nSince, for the positive integers, all common\ndefinitions of division are equal, this operation\nis exactly equal to self.overflowing_rem(rhs).

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(5usize.overflowing_rem_euclid(2), (1, false));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_neg(self) -> (usize, bool)

Negates self in an overflowing fashion.

\n

Returns !self + 1 using wrapping operations to return the value\nthat represents the negation of this unsigned value. Note that for\npositive unsigned values overflow always occurs, but negating 0 does\nnot overflow.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0usize.overflowing_neg(), (0, false));\nassert_eq!(2usize.overflowing_neg(), (-2i32 as usize, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_shl(self, rhs: u32) -> (usize, bool)

Shifts self left by rhs bits.

\n

Returns a tuple of the shifted version of self along with a boolean\nindicating whether the shift value was larger than or equal to the\nnumber of bits. If the shift value is too large, then value is\nmasked (N-1) where N is the number of bits, and this value is then\nused to perform the shift.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0x1usize.overflowing_shl(4), (0x10, false));\nassert_eq!(0x1usize.overflowing_shl(132), (0x10, true));
\n
1.7.0 (const: 1.32.0) · source

pub const fn overflowing_shr(self, rhs: u32) -> (usize, bool)

Shifts self right by rhs bits.

\n

Returns a tuple of the shifted version of self along with a boolean\nindicating whether the shift value was larger than or equal to the\nnumber of bits. If the shift value is too large, then value is\nmasked (N-1) where N is the number of bits, and this value is then\nused to perform the shift.

\n
§Examples
\n

Basic usage

\n\n
assert_eq!(0x10usize.overflowing_shr(4), (0x1, false));\nassert_eq!(0x10usize.overflowing_shr(132), (0x1, true));
\n
1.34.0 (const: 1.50.0) · source

pub const fn overflowing_pow(self, exp: u32) -> (usize, bool)

Raises self to the power of exp, using exponentiation by squaring.

\n

Returns a tuple of the exponentiation along with a bool indicating\nwhether an overflow happened.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(3usize.overflowing_pow(5), (243, false));\nassert_eq!(3u8.overflowing_pow(6), (217, true));
\n
1.0.0 (const: 1.50.0) · source

pub const fn pow(self, exp: u32) -> usize

Raises self to the power of exp, using exponentiation by squaring.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.pow(5), 32);
\n
source

pub const fn isqrt(self) -> usize

🔬This is a nightly-only experimental API. (isqrt)

Returns the square root of the number, rounded down.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(isqrt)]\nassert_eq!(10usize.isqrt(), 3);
\n
1.38.0 (const: 1.52.0) · source

pub const fn div_euclid(self, rhs: usize) -> usize

Performs Euclidean division.

\n

Since, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self / rhs.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7usize.div_euclid(4), 1); // or any other integer type
\n
1.38.0 (const: 1.52.0) · source

pub const fn rem_euclid(self, rhs: usize) -> usize

Calculates the least remainder of self (mod rhs).

\n

Since, for the positive integers, all common\ndefinitions of division are equal, this\nis exactly equal to self % rhs.

\n
§Panics
\n

This function will panic if rhs is 0.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7usize.rem_euclid(4), 3); // or any other integer type
\n
source

pub const fn div_floor(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (int_roundings)

Calculates the quotient of self and rhs, rounding the result towards negative infinity.

\n

This is the same as performing self / rhs for all unsigned integers.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(int_roundings)]\nassert_eq!(7_usize.div_floor(4), 1);
\n
1.73.0 (const: 1.73.0) · source

pub const fn div_ceil(self, rhs: usize) -> usize

Calculates the quotient of self and rhs, rounding the result towards positive infinity.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(7_usize.div_ceil(4), 2);
\n
1.73.0 (const: 1.73.0) · source

pub const fn next_multiple_of(self, rhs: usize) -> usize

Calculates the smallest value greater than or equal to self that\nis a multiple of rhs.

\n
§Panics
\n

This function will panic if rhs is zero.

\n
§Overflow behavior
\n

On overflow, this function will panic if overflow checks are enabled (default in debug\nmode) and wrap if overflow checks are disabled (default in release mode).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(16_usize.next_multiple_of(8), 16);\nassert_eq!(23_usize.next_multiple_of(8), 24);
\n
1.73.0 (const: 1.73.0) · source

pub const fn checked_next_multiple_of(self, rhs: usize) -> Option<usize>

Calculates the smallest value greater than or equal to self that\nis a multiple of rhs. Returns None if rhs is zero or the\noperation would result in overflow.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(16_usize.checked_next_multiple_of(8), Some(16));\nassert_eq!(23_usize.checked_next_multiple_of(8), Some(24));\nassert_eq!(1_usize.checked_next_multiple_of(0), None);\nassert_eq!(usize::MAX.checked_next_multiple_of(2), None);
\n
1.0.0 (const: 1.32.0) · source

pub const fn is_power_of_two(self) -> bool

Returns true if and only if self == 2^k for some k.

\n
§Examples
\n

Basic usage:

\n\n
assert!(16usize.is_power_of_two());\nassert!(!10usize.is_power_of_two());
\n
1.0.0 (const: 1.50.0) · source

pub const fn next_power_of_two(self) -> usize

Returns the smallest power of two greater than or equal to self.

\n

When return value overflows (i.e., self > (1 << (N-1)) for type\nuN), it panics in debug mode and the return value is wrapped to 0 in\nrelease mode (the only situation in which this method can return 0).

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.next_power_of_two(), 2);\nassert_eq!(3usize.next_power_of_two(), 4);\nassert_eq!(0usize.next_power_of_two(), 1);
\n
1.0.0 (const: 1.50.0) · source

pub const fn checked_next_power_of_two(self) -> Option<usize>

Returns the smallest power of two greater than or equal to self. If\nthe next power of two is greater than the type’s maximum value,\nNone is returned, otherwise the power of two is wrapped in Some.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(2usize.checked_next_power_of_two(), Some(2));\nassert_eq!(3usize.checked_next_power_of_two(), Some(4));\nassert_eq!(usize::MAX.checked_next_power_of_two(), None);
\n
source

pub const fn wrapping_next_power_of_two(self) -> usize

🔬This is a nightly-only experimental API. (wrapping_next_power_of_two)

Returns the smallest power of two greater than or equal to n. If\nthe next power of two is greater than the type’s maximum value,\nthe return value is wrapped to 0.

\n
§Examples
\n

Basic usage:

\n\n
#![feature(wrapping_next_power_of_two)]\n\nassert_eq!(2usize.wrapping_next_power_of_two(), 2);\nassert_eq!(3usize.wrapping_next_power_of_two(), 4);\nassert_eq!(usize::MAX.wrapping_next_power_of_two(), 0);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_be_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nbig-endian (network) byte order.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_be_bytes();\nassert_eq!(bytes, [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_le_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nlittle-endian byte order.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_le_bytes();\nassert_eq!(bytes, [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);
\n
1.32.0 (const: 1.44.0) · source

pub const fn to_ne_bytes(self) -> [u8; 8]

Return the memory representation of this integer as a byte array in\nnative byte order.

\n

As the target platform’s native endianness is used, portable code\nshould use to_be_bytes or to_le_bytes, as appropriate,\ninstead.

\n

Note: This function returns an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let bytes = 0x1234567890123456usize.to_ne_bytes();\nassert_eq!(\n    bytes,\n    if cfg!(target_endian = \"big\") {\n        [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]\n    } else {\n        [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]\n    }\n);
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_be_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its representation\nas a byte array in big endian.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_be_bytes([0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]);\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_be_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_be_bytes(int_bytes.try_into().unwrap())\n}
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_le_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its representation\nas a byte array in little endian.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_le_bytes([0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]);\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_le_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_le_bytes(int_bytes.try_into().unwrap())\n}
\n
1.32.0 (const: 1.44.0) · source

pub const fn from_ne_bytes(bytes: [u8; 8]) -> usize

Create a native endian integer value from its memory representation\nas a byte array in native endianness.

\n

As the target platform’s native endianness is used, portable code\nlikely wants to use from_be_bytes or from_le_bytes, as\nappropriate instead.

\n

Note: This function takes an array of length 2, 4 or 8 bytes\ndepending on the target pointer size.

\n
§Examples
\n
let value = usize::from_ne_bytes(if cfg!(target_endian = \"big\") {\n    [0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]\n} else {\n    [0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]\n});\nassert_eq!(value, 0x1234567890123456);
\n

When starting from a slice rather than an array, fallible conversion APIs can be used:

\n\n
fn read_ne_usize(input: &mut &[u8]) -> usize {\n    let (int_bytes, rest) = input.split_at(std::mem::size_of::<usize>());\n    *input = rest;\n    usize::from_ne_bytes(int_bytes.try_into().unwrap())\n}
\n
1.0.0 (const: 1.32.0) · source

pub const fn min_value() -> usize

👎Deprecating in a future version: replaced by the MIN associated constant on this type

New code should prefer to use\nusize::MIN instead.

\n

Returns the smallest value that can be represented by this integer type.

\n
1.0.0 (const: 1.32.0) · source

pub const fn max_value() -> usize

👎Deprecating in a future version: replaced by the MAX associated constant on this type

New code should prefer to use\nusize::MAX instead.

\n

Returns the largest value that can be represented by this integer type.

\n
source

pub const fn widening_mul(self, rhs: usize) -> (usize, usize)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates the complete product self * rhs without the possibility to overflow.

\n

This returns the low-order (wrapping) bits and the high-order (overflow) bits\nof the result as two separate values, in that order.

\n

If you also need to add a carry to the wide result, then you want\nSelf::carrying_mul instead.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(5u32.widening_mul(2), (10, 0));\nassert_eq!(1_000_000_000u32.widening_mul(10), (1410065408, 2));
\n
source

pub const fn carrying_mul(self, rhs: usize, carry: usize) -> (usize, usize)

🔬This is a nightly-only experimental API. (bigint_helper_methods)

Calculates the “full multiplication” self * rhs + carry\nwithout the possibility to overflow.

\n

This returns the low-order (wrapping) bits and the high-order (overflow) bits\nof the result as two separate values, in that order.

\n

Performs “long multiplication” which takes in an extra amount to add, and may return an\nadditional amount of overflow. This allows for chaining together multiple\nmultiplications to create “big integers” which represent larger values.

\n

If you don’t need the carry, then you can use Self::widening_mul instead.

\n
§Examples
\n

Basic usage:

\n

Please note that this example is shared between integer types.\nWhich explains why u32 is used here.

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(5u32.carrying_mul(2, 0), (10, 0));\nassert_eq!(5u32.carrying_mul(2, 10), (20, 0));\nassert_eq!(1_000_000_000u32.carrying_mul(10, 0), (1410065408, 2));\nassert_eq!(1_000_000_000u32.carrying_mul(10, 10), (1410065418, 2));\nassert_eq!(usize::MAX.carrying_mul(usize::MAX, usize::MAX), (0, usize::MAX));
\n

This is the core operation needed for scalar multiplication when\nimplementing it for wider-than-native types.

\n\n
#![feature(bigint_helper_methods)]\nfn scalar_mul_eq(little_endian_digits: &mut Vec<u16>, multiplicand: u16) {\n    let mut carry = 0;\n    for d in little_endian_digits.iter_mut() {\n        (*d, carry) = d.carrying_mul(multiplicand, carry);\n    }\n    if carry != 0 {\n        little_endian_digits.push(carry);\n    }\n}\n\nlet mut v = vec![10, 20];\nscalar_mul_eq(&mut v, 3);\nassert_eq!(v, [30, 60]);\n\nassert_eq!(0x87654321_u64 * 0xFEED, 0x86D3D159E38D);\nlet mut v = vec![0x4321, 0x8765];\nscalar_mul_eq(&mut v, 0xFEED);\nassert_eq!(v, [0xE38D, 0xD159, 0x86D3]);
\n

If carry is zero, this is similar to overflowing_mul,\nexcept that it gives the value of the overflow instead of just whether one happened:

\n\n
#![feature(bigint_helper_methods)]\nlet r = u8::carrying_mul(7, 13, 0);\nassert_eq!((r.0, r.1 != 0), u8::overflowing_mul(7, 13));\nlet r = u8::carrying_mul(13, 42, 0);\nassert_eq!((r.0, r.1 != 0), u8::overflowing_mul(13, 42));
\n

The value of the first field in the returned tuple matches what you’d get\nby combining the wrapping_mul and\nwrapping_add methods:

\n\n
#![feature(bigint_helper_methods)]\nassert_eq!(\n    789_u16.carrying_mul(456, 123).0,\n    789_u16.wrapping_mul(456).wrapping_add(123),\n);
\n
source

pub const fn midpoint(self, rhs: usize) -> usize

🔬This is a nightly-only experimental API. (num_midpoint)

Calculates the middle point of self and rhs.

\n

midpoint(a, b) is (a + b) >> 1 as if it were performed in a\nsufficiently-large signed integral type. This implies that the result is\nalways rounded towards negative infinity and that no overflow will ever occur.

\n
§Examples
\n
#![feature(num_midpoint)]\nassert_eq!(0usize.midpoint(4), 2);\nassert_eq!(1usize.midpoint(4), 2);
\n
",0,"tor_interface::tor_provider::CircuitToken"],["
source§

impl usize

1.0.0 (const: unstable) · source

pub fn from_str_radix(src: &str, radix: u32) -> Result<usize, ParseIntError>

Converts a string slice in a given base to an integer.

\n

The string is expected to be an optional + sign\nfollowed by digits.\nLeading and trailing whitespace represent an error.\nDigits are a subset of these characters, depending on radix:

\n
    \n
  • 0-9
  • \n
  • a-z
  • \n
  • A-Z
  • \n
\n
§Panics
\n

This function panics if radix is not in the range from 2 to 36.

\n
§Examples
\n

Basic usage:

\n\n
assert_eq!(usize::from_str_radix(\"A\", 16), Ok(10));
\n
",0,"tor_interface::tor_provider::CircuitToken"],["
§

impl AtLeast16 for usize

","AtLeast16","tor_interface::tor_provider::CircuitToken"],["
§

impl AtLeast32 for usize

","AtLeast32","tor_interface::tor_provider::CircuitToken"],["
§

impl AtLeast64 for usize

","AtLeast64","tor_interface::tor_provider::CircuitToken"],["
§

impl AtLeast8 for usize

","AtLeast8","tor_interface::tor_provider::CircuitToken"],["
§

impl AtMost128 for usize

","AtMost128","tor_interface::tor_provider::CircuitToken"],["
§

impl AtMost64 for usize

","AtMost64","tor_interface::tor_provider::CircuitToken"],["
§

impl BitOps for usize

","BitOps","tor_interface::tor_provider::CircuitToken"],["
source§

impl ConstParamTy for usize

","ConstParamTy","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Copy for usize

","Copy","tor_interface::tor_provider::CircuitToken"],["
§

impl DefaultIsZeroes for usize

","DefaultIsZeroes","tor_interface::tor_provider::CircuitToken"],["
1.0.0 · source§

impl Eq for usize

","Eq","tor_interface::tor_provider::CircuitToken"],["
§

impl ExtendTarget<usize> for usize

","ExtendTarget","tor_interface::tor_provider::CircuitToken"],["
source§

impl Index for usize

","Index","tor_interface::tor_provider::CircuitToken"],["
§

impl Index for usize

","Index","tor_interface::tor_provider::CircuitToken"],["
source§

impl Integer for usize

","Integer","tor_interface::tor_provider::CircuitToken"],["
§

impl Is64 for usize

","Is64","tor_interface::tor_provider::CircuitToken"],["
§

impl NotAutoValue for usize

","NotAutoValue","tor_interface::tor_provider::CircuitToken"],["
§

impl NumericOps for usize

","NumericOps","tor_interface::tor_provider::CircuitToken"],["
source§

impl SimdCast for usize

","SimdCast","tor_interface::tor_provider::CircuitToken"],["
source§

impl StructuralPartialEq for usize

","StructuralPartialEq","tor_interface::tor_provider::CircuitToken"],["
§

impl TruncateTarget<u16> for usize

","TruncateTarget","tor_interface::tor_provider::CircuitToken"],["
§

impl TruncateTarget<u8> for usize

","TruncateTarget","tor_interface::tor_provider::CircuitToken"],["
§

impl TruncateTarget<usize> for usize

","TruncateTarget","tor_interface::tor_provider::CircuitToken"],["
source§

impl TrustedStep for usize

","TrustedStep","tor_interface::tor_provider::CircuitToken"],["
§

impl Uint for usize

","Uint","tor_interface::tor_provider::CircuitToken"],["
source§

impl Unsigned for usize

","Unsigned","tor_interface::tor_provider::CircuitToken"],["
source§

impl Weight for usize

","Weight","tor_interface::tor_provider::CircuitToken"],["
source§

impl ZeroablePrimitive for usize

","ZeroablePrimitive","tor_interface::tor_provider::CircuitToken"]] };if (window.register_type_impls) {window.register_type_impls(type_impls);} else {window.pending_type_impls = type_impls;}})() \ No newline at end of file

Macros

#define GOSLING_HAVE_MOCK_TOR_PROVIDER   1
 
#define GOSLING_HAVE_LEGACY_TOR_PROVIDER   1
 
#define GOSLING_HAVE_MOCK_TOR_PROVIDER   1
 
#define TARGET_ADDRESS_STRING_SIZE   260
 
#define V3_ONION_SERVICE_ID_STRING_LENGTH   56