SYMBOL INDEX (294 symbols across 20 files) FILE: pgo/server/src/main.rs function main (line 7) | async fn main() { function root (line 20) | async fn root() -> &'static str { FILE: src/aws_auth.rs type AwsSignatureConfig (line 11) | pub struct AwsSignatureConfig { method sign_request (line 42) | pub fn sign_request( method new (line 115) | pub fn new( type AwsSignatureError (line 20) | pub enum AwsSignatureError { FILE: src/cli.rs function parse_header (line 4) | pub fn parse_header(s: &str) -> Result<(HeaderName, HeaderValue), anyhow... function parse_n_requests (line 12) | pub fn parse_n_requests(s: &str) -> Result { type ConnectToEntry (line 31) | pub struct ConnectToEntry { type Err (line 39) | type Err = String; method from_str (line 41) | fn from_str(s: &str) -> Result { function parse_vsock_addr (line 68) | pub fn parse_vsock_addr(s: &str) -> Result String { type ConnectionTime (line 46) | pub struct ConnectionTime { type RequestResult (line 53) | pub struct RequestResult { method duration (line 74) | pub fn duration(&self) -> std::time::Duration { type HttpWorkType (line 81) | enum HttpWorkType { type Dns (line 88) | pub struct Dns { method select_connect_to (line 95) | fn select_connect_to<'a, R: Rng>( method lookup (line 110) | async fn lookup( type ClientError (line 153) | pub enum ClientError { type Client (line 209) | pub struct Client { method is_http2 (line 411) | fn is_http2(&self) -> bool { method is_proxy_http2 (line 416) | fn is_proxy_http2(&self) -> bool { method is_work_http2 (line 420) | fn is_work_http2(&self) -> bool { method work_type (line 432) | fn work_type(&self) -> HttpWorkType { method pre_lookup (line 446) | pub async fn pre_lookup(&self) -> Result<(), ClientError> { method generate_request (line 466) | pub fn generate_request( method client (line 495) | pub(crate) async fn client( method tls_client (line 569) | async fn tls_client( method connect_tls (line 584) | async fn connect_tls( method connect_tls (line 604) | async fn connect_tls( method client_http1 (line 623) | async fn client_http1( method work_http1 (line 684) | async fn work_http1( method connect_http2 (line 792) | async fn connect_http2( method work_http2 (line 883) | async fn work_http2( method redirect (line 940) | async fn redirect( method default (line 231) | fn default() -> Self { type ClientStateHttp1 (line 279) | struct ClientStateHttp1 { method default (line 285) | fn default() -> Self { type ClientStateHttp2 (line 293) | struct ClientStateHttp2 { type QueryLimit (line 298) | pub enum QueryLimit { type Stream (line 305) | pub(crate) enum Stream { method handshake_http1 (line 321) | async fn handshake_http1(self, with_upgrade: bool) -> Result Result { function is_cancel_error (line 1031) | pub(crate) fn is_cancel_error(res: &Result) ... function is_too_many_open_files (line 1036) | fn is_too_many_open_files(res: &Result) -> b... function is_hyper_error (line 1047) | fn is_hyper_error(res: &Result) -> bool { function setup_http2 (line 1060) | async fn setup_http2( function work_http2_once (line 1070) | async fn work_http2_once( function set_connection_time (line 1088) | pub(crate) fn set_connection_time( function set_start_latency_correction (line 1097) | pub(crate) fn set_start_latency_correction( function work_debug (line 1106) | pub async fn work_debug(w: &mut W, client: Arc) -> Res... function work (line 1144) | pub async fn work( function work_with_qps (line 1270) | pub async fn work_with_qps( function work_with_qps_latency_correction (line 1440) | pub async fn work_with_qps_latency_correction( function work_until (line 1615) | pub async fn work_until( function work_until_with_qps (line 1780) | pub async fn work_until_with_qps( function work_until_with_qps_latency_correction (line 1990) | pub async fn work_until_with_qps_latency_correction( function work (line 2218) | pub async fn work( function work_until (line 2443) | pub async fn work_until( FILE: src/client_h3.rs type SendRequestHttp3 (line 19) | pub type SendRequestHttp3 = ( type Http3Error (line 26) | pub enum Http3Error { type ClientStateHttp3 (line 51) | pub(crate) struct ClientStateHttp3 { method new (line 57) | fn new(send_request: h3::client::SendRequest( method quic_client (line 84) | pub(crate) async fn quic_client( method work_http3 (line 121) | pub(crate) async fn work_http3( method handshake_http3 (line 193) | async fn handshake_http3(self) -> Result { function send_debug_request_http3 (line 204) | pub(crate) async fn send_debug_request_http3( function parallel_work_http3 (line 246) | pub(crate) async fn parallel_work_http3( function create_and_load_up_single_connection_http3 (line 286) | async fn create_and_load_up_single_connection_http3( function setup_http3 (line 378) | pub(crate) async fn setup_http3( function spawn_http3_driver (line 389) | pub(crate) fn spawn_http3_driver( function work_http3_once (line 419) | pub(crate) async fn work_http3_once( function is_h3_error (line 437) | fn is_h3_error(res: &Result) -> bool { function http3_connection_fast_work_until (line 450) | pub(crate) fn http3_connection_fast_work_until( function work (line 574) | pub async fn work( function work_with_qps (line 600) | pub async fn work_with_qps( function work_with_qps_latency_correction (line 656) | pub async fn work_with_qps_latency_correction( function work_until (line 715) | pub async fn work_until( function work_until_with_qps (line 747) | pub async fn work_until_with_qps( function work_until_with_qps_latency_correction (line 811) | pub async fn work_until_with_qps_latency_correction( function endless_emitter (line 874) | async fn endless_emitter( function work (line 905) | pub async fn work( function work_until (line 967) | pub async fn work_until( FILE: src/curl_compat.rs type Form (line 4) | pub struct Form { method new (line 17) | pub fn new() -> Self { method add_part (line 24) | pub fn add_part(&mut self, part: FormPart) { method content_type (line 28) | pub fn content_type(&self) -> String { method body (line 32) | pub fn body(&self) -> Vec { method generate_boundary (line 76) | fn generate_boundary() -> String { type FormPart (line 9) | pub struct FormPart { type Err (line 90) | type Err = anyhow::Error; method from_str (line 99) | fn from_str(s: &str) -> Result { function test_parse_simple_field (line 172) | fn test_parse_simple_field() { function test_parse_field_with_filename (line 181) | fn test_parse_field_with_filename() { function test_parse_field_with_type (line 190) | fn test_parse_field_with_type() { function test_parse_field_with_filename_and_type (line 199) | fn test_parse_field_with_filename_and_type() { function test_parse_invalid_format (line 210) | fn test_parse_invalid_format() { function test_parse_file_upload (line 216) | fn test_parse_file_upload() { function test_parse_file_upload_without_filename (line 235) | fn test_parse_file_upload_without_filename() { function test_form_creation_and_body_generation (line 254) | fn test_form_creation_and_body_generation() { function test_form_content_type (line 292) | fn test_form_content_type() { function test_empty_form_body (line 301) | fn test_empty_form_body() { function test_form_with_file_upload (line 311) | fn test_form_with_file_upload() { function test_boundary_generation_is_random (line 338) | fn test_boundary_generation_is_random() { FILE: src/db.rs function create_db (line 5) | fn create_db(conn: &Connection) -> Result { function store (line 21) | pub fn store( function test_store (line 64) | fn test_store() { FILE: src/histogram.rs function histogram (line 1) | pub fn histogram(values: &[f64], bins: usize) -> Vec<(f64, usize)> { function test_histogram (line 25) | fn test_histogram() { FILE: src/lib.rs type Opts (line 61) | pub struct Opts { method work_mode (line 946) | fn work_mode(&self) -> WorkMode { function run (line 335) | pub async fn run(mut opts: Opts) -> anyhow::Result<()> { function system_resolv_conf (line 892) | pub(crate) fn system_resolv_conf() -> anyhow::Result<(ResolverConfig, Re... function fallback_resolver_config (line 915) | fn fallback_resolver_config(err: anyhow::Error) -> anyhow::Result<(Resol... type WorkMode (line 924) | enum WorkMode { FILE: src/main.rs function main (line 4) | fn main() { FILE: src/monitor.rs type EndLine (line 21) | pub enum EndLine { type ColorScheme (line 28) | struct ColorScheme { method new (line 35) | fn new() -> ColorScheme { method set_colors (line 43) | fn set_colors(&mut self) { type Monitor (line 50) | pub struct Monitor { method monitor (line 79) | pub async fn monitor(self) -> Result<(ResultData, PrintConfig), std::i... type IntoRawMode (line 63) | struct IntoRawMode; method new (line 66) | pub fn new() -> Result<(Self, DefaultTerminal), std::io::Error> { method drop (line 73) | fn drop(&mut self) { FILE: src/pcg64si.rs type Pcg64Si (line 8) | pub struct Pcg64Si { type Error (line 13) | type Error = Infallible; method try_next_u32 (line 15) | fn try_next_u32(&mut self) -> Result { method try_next_u64 (line 19) | fn try_next_u64(&mut self) -> Result { method try_fill_bytes (line 31) | fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Self::Error> { type Seed (line 37) | type Seed = [u8; 8]; method from_seed (line 39) | fn from_seed(seed: Self::Seed) -> Pcg64Si { function test_rng_next (line 55) | fn test_rng_next() { function test_rng_from_seed (line 67) | fn test_rng_from_seed() { function test_rng_fill_bytes (line 75) | fn test_rng_fill_bytes() { FILE: src/printer.rs type StyleScheme (line 14) | struct StyleScheme { method no_style (line 18) | fn no_style(self, text: &str) -> StyledContent<&str> { method heading (line 21) | fn heading(self, text: &str) -> StyledContent<&str> { method success_rate (line 28) | fn success_rate(self, text: &str, success_rate: f64) -> StyledContent<... method fastest (line 41) | fn fastest(self, text: &str) -> StyledContent<&str> { method slowest (line 48) | fn slowest(self, text: &str) -> StyledContent<&str> { method average (line 55) | fn average(self, text: &str) -> StyledContent<&str> { method latency_distribution (line 63) | fn latency_distribution(self, text: &str, label: f64) -> StyledContent... method status_distribution (line 81) | fn status_distribution(self, text: &str, status: StatusCode) -> Styled... type PrintMode (line 99) | pub enum PrintMode { type PrintConfig (line 107) | pub struct PrintConfig { function print_result (line 115) | pub fn print_result( function print_json (line 144) | fn print_json( function print_csv (line 411) | fn print_csv(w: &mut W, start: Instant, res: &ResultData) -> s... function print_summary (line 446) | fn print_summary( function print_histogram (line 647) | fn print_histogram( function bar (line 685) | fn bar(w: &mut W, ratio: f64, style: StyleScheme, label: f64) ... function percentile_iter (line 694) | fn percentile_iter(values: &mut [f64]) -> impl Iterator( function percentiles (line 729) | fn percentiles(values: &mut [f64]) -> BTreeMap { function test_percentile_iter (line 742) | fn test_percentile_iter() { FILE: src/request_generator.rs type Proxy (line 15) | pub struct Proxy { type BodyGenerator (line 20) | pub enum BodyGenerator { type RequestGenerator (line 25) | pub struct RequestGenerator { method is_http1 (line 49) | fn is_http1(&self) -> bool { method generate_body (line 53) | fn generate_body(&self, rng: &mut R) -> Bytes { method generate (line 60) | pub fn generate( type RequestGenerationError (line 38) | pub enum RequestGenerationError { FILE: src/result_data.rs type ResultData (line 18) | pub struct ResultData { method push (line 55) | pub fn push(&mut self, result: Result) { method len (line 65) | pub fn len(&self) -> usize { method merge (line 69) | pub fn merge(&mut self, other: ResultData) { method success (line 79) | pub fn success(&self) -> &[RequestResult] { method success_rate (line 85) | pub fn success_rate(&self) -> f64 { method latency_stat (line 99) | pub fn latency_stat(&self) -> MinMaxMean { method error_distribution (line 106) | pub fn error_distribution(&self) -> &BTreeMap { method end_times_from_start (line 110) | pub fn end_times_from_start(&self, start: Instant) -> impl Iterator BTreeMap { method dns_dialup_stat (line 123) | pub fn dns_dialup_stat(&self) -> MinMaxMean { method dns_lookup_stat (line 130) | pub fn dns_lookup_stat(&self) -> MinMaxMean { method first_byte_stat (line 137) | pub fn first_byte_stat(&self) -> MinMaxMean { method total_data (line 144) | pub fn total_data(&self) -> usize { method size_per_request (line 148) | pub fn size_per_request(&self) -> Option { method duration_all_statistics (line 156) | pub fn duration_all_statistics(&self) -> Statistics { method first_byte_all_statistics (line 165) | pub fn first_byte_all_statistics(&self) -> Statistics { method duration_successful_statistics (line 174) | pub fn duration_successful_statistics(&self) -> Statistics { method duration_not_successful_statistics (line 185) | pub fn duration_not_successful_statistics(&self) -> Statistics { type Statistics (line 25) | pub struct Statistics { method new (line 32) | fn new(data: &mut [f64]) -> Self { function percentile_iter (line 42) | fn percentile_iter(values: &mut [f64]) -> impl Iterator ResultData { function test_calculate_success_rate (line 263) | fn test_calculate_success_rate() { function test_calculate_slowest_request (line 269) | fn test_calculate_slowest_request() { function test_calculate_average_request (line 275) | fn test_calculate_average_request() { function test_calculate_total_data (line 281) | fn test_calculate_total_data() { function test_calculate_size_per_request (line 287) | fn test_calculate_size_per_request() { function test_calculate_connection_times_dns_dialup_average (line 293) | fn test_calculate_connection_times_dns_dialup_average() { function test_calculate_connection_times_dns_dialup_fastest (line 299) | fn test_calculate_connection_times_dns_dialup_fastest() { function test_calculate_connection_times_dns_dialup_slowest (line 305) | fn test_calculate_connection_times_dns_dialup_slowest() { function test_calculate_connection_times_dns_lookup_average (line 311) | fn test_calculate_connection_times_dns_lookup_average() { function test_calculate_connection_times_dns_lookup_fastest (line 317) | fn test_calculate_connection_times_dns_lookup_fastest() { function test_calculate_connection_times_dns_lookup_slowest (line 323) | fn test_calculate_connection_times_dns_lookup_slowest() { FILE: src/timescale.rs type TimeScale (line 4) | pub enum TimeScale { method fmt (line 22) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method value_variants (line 76) | fn value_variants<'a>() -> &'a [Self] { method to_possible_value (line 87) | fn to_possible_value(&self) -> Option { method as_secs_f64 (line 101) | pub fn as_secs_f64(&self) -> f64 { method from_f64 (line 115) | pub fn from_f64(seconds: f64) -> Self { method from_elapsed (line 133) | pub fn from_elapsed(duration: Duration) -> Self { method inc (line 137) | pub fn inc(&self) -> Self { method dec (line 150) | pub fn dec(&self) -> Self { type TimeLabel (line 16) | pub struct TimeLabel { method fmt (line 37) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function assert_timescale_correct_for_seconds_range (line 168) | fn assert_timescale_correct_for_seconds_range( function test_timescale_ranges (line 183) | fn test_timescale_ranges() { function test_timescale_inc (line 225) | fn test_timescale_inc() { function test_timescale_dec (line 244) | fn test_timescale_dec() { FILE: src/tls_config.rs type RuslsConfigs (line 2) | pub struct RuslsConfigs { method new (line 10) | pub fn new( method config (line 65) | pub fn config(&self, http: hyper::http::Version) -> &std::sync::Arc &tokio_native_tls::TlsConne... type AcceptAnyServerCert (line 140) | pub struct AcceptAnyServerCert; method verify_server_cert (line 144) | fn verify_server_cert( method verify_tls12_signature (line 155) | fn verify_tls12_signature( method verify_tls13_signature (line 164) | fn verify_tls13_signature( method supported_verify_schemes (line 173) | fn supported_verify_schemes(&self) -> Vec { FILE: src/url_generator.rs type UrlGenerator (line 9) | pub enum UrlGenerator { method new_static (line 28) | pub fn new_static(url: Url) -> Self { method new_multi_static (line 32) | pub fn new_multi_static(urls: Vec) -> Self { method new_dynamic (line 37) | pub fn new_dynamic(regex: Regex) -> Self { method generate (line 41) | pub fn generate(&self, rng: &mut R) -> Result, Ur... type UrlGeneratorError (line 16) | pub enum UrlGeneratorError { function test_url_generator_static (line 73) | fn test_url_generator_static() { function test_url_generator_multistatic (line 81) | fn test_url_generator_multistatic() { function test_url_generator_dynamic (line 99) | fn test_url_generator_dynamic() { function test_url_generator_dynamic_consistency (line 115) | fn test_url_generator_dynamic_consistency() { function test_url_generator_multi_consistency (line 131) | fn test_url_generator_multi_consistency() { FILE: tests/common/mod.rs function h3_server (line 14) | pub async fn h3_server( function process_request (line 94) | async fn process_request( FILE: tests/tests.rs function run (line 29) | async fn run<'a>(args: impl Iterator) { function next_port (line 42) | fn next_port() -> u16 { function install_crypto_provider (line 47) | fn install_crypto_provider() { function bind_port (line 56) | async fn bind_port(port: u16) -> tokio::net::TcpListener { function bind_port_and_increment (line 62) | async fn bind_port_and_increment() -> (tokio::net::TcpListener, u16) { function bind_port_ipv6 (line 68) | async fn bind_port_ipv6(port: u16) -> tokio::net::TcpListener { type HttpWorkType (line 75) | enum HttpWorkType { function http_work_type (line 82) | fn http_work_type(args: &[&str]) -> HttpWorkType { function test_all_http_versions (line 104) | fn test_all_http_versions(#[case] http_version_param: &str) {} function test_all_http_versions (line 111) | fn test_all_http_versions(#[case] http_version_param: &str) {} function get_req (line 113) | async fn get_req(path: &str, args: &[&str]) -> Request { function redirect (line 189) | async fn redirect(n: usize, is_relative: bool, limit: usize) -> bool { function get_host_with_connect_to (line 223) | async fn get_host_with_connect_to(host: &'static str) -> String { function get_host_with_connect_to_ipv6_target (line 250) | async fn get_host_with_connect_to_ipv6_target(host: &'static str) -> Str... function get_host_with_connect_to_ipv6_requested (line 278) | async fn get_host_with_connect_to_ipv6_requested() -> String { function get_host_with_connect_to_redirect (line 304) | async fn get_host_with_connect_to_redirect(host: &'static str) -> String { function test_request_count (line 335) | async fn test_request_count(args: &[&str]) -> usize { function distribution_on_two_matching_connect_to (line 361) | async fn distribution_on_two_matching_connect_to(host: &'static str) -> ... function test_enable_compression_default (line 415) | async fn test_enable_compression_default(http_version_param: &str) { function test_setting_custom_header (line 432) | async fn test_setting_custom_header(http_version_param: &str) { function test_setting_accept_header (line 443) | async fn test_setting_accept_header(http_version_param: &str) { function test_setting_body (line 471) | async fn test_setting_body(http_version_param: &str) { function test_setting_content_type_header (line 484) | async fn test_setting_content_type_header() { function test_setting_basic_auth (line 510) | async fn test_setting_basic_auth(http_version_param: &str) { function test_setting_host (line 527) | async fn test_setting_host() { function test_setting_method (line 545) | async fn test_setting_method() { function test_query (line 623) | async fn test_query() { function test_query_rand_regex (line 642) | async fn test_query_rand_regex() { function test_redirect (line 671) | async fn test_redirect() { function test_connect_to (line 683) | async fn test_connect_to() { function test_connect_to_randomness (line 691) | async fn test_connect_to_randomness() { function test_connect_to_ipv6_target (line 698) | async fn test_connect_to_ipv6_target() { function test_connect_to_ipv6_requested (line 706) | async fn test_connect_to_ipv6_requested() { function test_connect_to_redirect (line 711) | async fn test_connect_to_redirect() { function test_connect_to_http_proxy_override (line 719) | async fn test_connect_to_http_proxy_override() { function test_connect_to_https_proxy_connect_override (line 777) | async fn test_connect_to_https_proxy_connect_override() { function test_ipv6 (line 822) | async fn test_ipv6() { function test_query_limit (line 848) | async fn test_query_limit() { function test_query_limit_with_time_limit (line 857) | async fn test_query_limit_with_time_limit() { function test_http_versions (line 863) | async fn test_http_versions() { function test_unix_socket (line 882) | async fn test_unix_socket() { function make_root_issuer (line 919) | fn make_root_issuer() -> rcgen::Issuer<'static, rcgen::KeyPair> { function bind_proxy (line 938) | async fn bind_proxy(service: S, http2: bool) -> (u16, impl Future( function test_proxy_with_setting (line 1059) | async fn test_proxy_with_setting(https: bool, http2: bool, proxy_http2: ... function test_proxy (line 1108) | async fn test_proxy() { function test_google (line 1119) | async fn test_google() { function test_json_schema (line 1138) | async fn test_json_schema() { function test_csv_output (line 1202) | async fn test_csv_output() { function setup_mtls_server (line 1253) | fn setup_mtls_server( function test_mtls (line 1320) | async fn test_mtls() { function test_body_path_lines (line 1342) | async fn test_body_path_lines() {