sdl2-sys 0.37.0

Raw SDL2 bindings for Rust, used internally rust-sdl2
Documentation
Build #1248427 2024-06-13T16:36:35.654684+00:00
# rustc version
rustc 1.81.0-nightly (8337ba918 2024-06-12)# docs.rs version
docsrs 0.6.0 (2d4f32bd 2024-05-19)# build log
[INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder/builds/sdl2-sys-0.37.0/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder/builds/sdl2-sys-0.37.0/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "6442450944" "--cpus" "6" "--user" "1001:1001" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20240612-1.81.0-nightly-8337ba918\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j6" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] c5a9bef2b82896c48cad690c3ddb45db6f2e124189859dddcbd905fd969d1e1c
[INFO] running `Command { std: "docker" "start" "-a" "c5a9bef2b82896c48cad690c3ddb45db6f2e124189859dddcbd905fd969d1e1c", kill_on_drop: false }`
[INFO] [stderr] warning: unexpected `cfg` condition name: `mac_framework`
[INFO] [stderr]    --> build.rs:331:29
[INFO] [stderr]     |
[INFO] [stderr] 331 |                 if cfg!(any(mac_framework, feature = "use_mac_framework")) {
[INFO] [stderr]     |                             ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows`
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(mac_framework)'] }
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `mac_framework`
[INFO] [stderr]    --> build.rs:347:29
[INFO] [stderr]     |
[INFO] [stderr] 347 |                 if cfg!(any(mac_framework, feature = "use_mac_framework")) {
[INFO] [stderr]     |                             ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(mac_framework)'] }
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `mac_framework`
[INFO] [stderr]    --> build.rs:363:29
[INFO] [stderr]     |
[INFO] [stderr] 363 |                 if cfg!(any(mac_framework, feature = "use_mac_framework")) {
[INFO] [stderr]     |                             ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(mac_framework)'] }
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `mac_framework`
[INFO] [stderr]    --> build.rs:379:29
[INFO] [stderr]     |
[INFO] [stderr] 379 |                 if cfg!(any(mac_framework, feature = "use_mac_framework")) {
[INFO] [stderr]     |                             ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider using a Cargo feature instead
[INFO] [stderr]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]              [lints.rust]
[INFO] [stderr]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(mac_framework)'] }
[INFO] [stderr]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: `sdl2-sys` (build script) generated 4 warnings
[INFO] [stderr] warning: struct `VkInstance_T` is never constructed
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:28530:12
[INFO] [stderr]       |
[INFO] [stderr] 28530 | pub struct VkInstance_T {
[INFO] [stderr]       |            ^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VkSurfaceKHR_T` is never constructed
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:28535:12
[INFO] [stderr]       |
[INFO] [stderr] 28535 | pub struct VkSurfaceKHR_T {
[INFO] [stderr]       |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `sdl2-sys` (lib) generated 2 warnings
[INFO] [stderr]     Scraping sdl2-sys v0.37.0 (/opt/rustwide/workdir)
[INFO] [stderr]  Documenting sdl2-sys v0.37.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unresolved link to `RGBA`
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:6292:13
[INFO] [stderr]      |
[INFO] [stderr] 6292 | ... = " Allocate a new RGB surface.\n\n If `depth` is 4 or 8 bits, an empty palette is allocated for the surface.\n If `depth` is greater than 8 bits, the pixel format is set using the\n [RGBA]mask parameters.\n\n The [RGBA]mask parameters are the bitmasks used to extract that color from\n a pixel. For instance, `Rmask` being 0xFF000000 means the red data is\n stored in the most significant byte. Using zeros for the RGB masks sets a\n default value, based on the depth. For example:\n\n ```c++\n SDL_CreateRGBSurface(0,w,h,32,0,0,0,0);\n ```\n\n However, using zero for the Amask results in an Amask of 0.\n\n By default surfaces with an alpha mask are set up for blending as with:\n\n ```c++\n SDL_SetSurfaceBlendMode(surface, SDL_BLENDMODE_BLEND)\n ```\n\n You can change this by calling SDL_SetSurfaceBlendMode() and selecting a\n different `blendMode`.\n\n \\param flags the flags are unused and should be set to 0\n \\param width the width of the surface\n \\param height the height of the surface\n \\param depth the depth of the surface in bits\n \\param Rmask the red mask for the pixels\n \\param Gmask the green mask for the pixels\n \\param Bmask the blue mask for the pixels\n \\param Amask the alpha mask for the pixels\n \\returns the new SDL_Surface structure that is created or NULL if it fails;\n          call SDL_GetError() for more information.\n\n \\since This function is available since SDL 2.0.0.\n\n \\sa SDL_CreateRGBSurfaceFrom\n \\sa SDL_CreateRGBSurfaceWithFormat\n \\sa SDL_FreeSurfac...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: the link appears in this line:
[INFO] [stderr]              
[INFO] [stderr]              [RGBA]mask parameters.
[INFO] [stderr]               ^^^^
[INFO] [stderr]      = note: no item named `RGBA` in scope
[INFO] [stderr]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr]      = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `RGBA`
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:6292:13
[INFO] [stderr]      |
[INFO] [stderr] 6292 | ... = " Allocate a new RGB surface.\n\n If `depth` is 4 or 8 bits, an empty palette is allocated for the surface.\n If `depth` is greater than 8 bits, the pixel format is set using the\n [RGBA]mask parameters.\n\n The [RGBA]mask parameters are the bitmasks used to extract that color from\n a pixel. For instance, `Rmask` being 0xFF000000 means the red data is\n stored in the most significant byte. Using zeros for the RGB masks sets a\n default value, based on the depth. For example:\n\n ```c++\n SDL_CreateRGBSurface(0,w,h,32,0,0,0,0);\n ```\n\n However, using zero for the Amask results in an Amask of 0.\n\n By default surfaces with an alpha mask are set up for blending as with:\n\n ```c++\n SDL_SetSurfaceBlendMode(surface, SDL_BLENDMODE_BLEND)\n ```\n\n You can change this by calling SDL_SetSurfaceBlendMode() and selecting a\n different `blendMode`.\n\n \\param flags the flags are unused and should be set to 0\n \\param width the width of the surface\n \\param height the height of the surface\n \\param depth the depth of the surface in bits\n \\param Rmask the red mask for the pixels\n \\param Gmask the green mask for the pixels\n \\param Bmask the blue mask for the pixels\n \\param Amask the alpha mask for the pixels\n \\returns the new SDL_Surface structure that is created or NULL if it fails;\n          call SDL_GetError() for more information.\n\n \\since This function is available since SDL 2.0.0.\n\n \\sa SDL_CreateRGBSurfaceFrom\n \\sa SDL_CreateRGBSurfaceWithFormat\n \\sa SDL_FreeSurfac...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: the link appears in this line:
[INFO] [stderr]              
[INFO] [stderr]              The [RGBA]mask parameters are the bitmasks used to extract that color from
[INFO] [stderr]                   ^^^^
[INFO] [stderr]      = note: no item named `RGBA` in scope
[INFO] [stderr]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `1`
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:14710:13
[INFO] [stderr]       |
[INFO] [stderr] 14710 | ... = " Get a feature report from a HID device.\n\n Set the first byte of `data` to the Report ID of the report to be read.\n Make sure to allow space for this extra byte in `data`. Upon return, the\n first byte will still contain the Report ID, and the report data will start\n in data[1].\n\n \\param dev A device handle returned from SDL_hid_open().\n \\param data A buffer to put the read data into, including the Report ID.\n             Set the first byte of `data` to the Report ID of the report to\n             be read, or set it to zero if your device does not use numbered\n             reports.\n \\param length The number of bytes to read, including an extra byte for the\n               report ID. The buffer can be longer than the actual report.\n \\returns the number of bytes read plus one for the report ID (which is\n          still in the first byte), or -1 on error.\n\n \\since This function is available since SDL 2.0.18...
[INFO] [stderr]       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: the link appears in this line:
[INFO] [stderr]               
[INFO] [stderr]               in data[1].
[INFO] [stderr]                       ^
[INFO] [stderr]       = note: no item named `1` in scope
[INFO] [stderr]       = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `COMPUTER`
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:13226:9
[INFO] [stderr]       |
[INFO] [stderr] 13226 | ... = "  \\brief Structure that represents a haptic direction.\n\n  This is the direction where the force comes from,\n  instead of the direction in which the force is exerted.\n\n  Directions can be specified by:\n   - ::SDL_HAPTIC_POLAR : Specified by polar coordinates.\n   - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates.\n   - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates.\n\n  Cardinal directions of the haptic device are relative to the positioning\n  of the device.  North is considered to be away from the user.\n\n  The following diagram represents the cardinal directions:\n  \\verbatim\n.--.\n|__| .-------.\n|=.| |.-----.|\n|--| ||     ||\n|  | |'-----'|\n|__|~')_____('\n[ COMPUTER ]\n\n\nNorth (0,-1)\n^\n|\n|\n(-1,0)  West <----[ HAPTIC ]----> East (1,0)\n|\n|\nv\nSouth (0,1)\n\n\n[ USER ]\n\\|||/\n(o o)\n---ooO-(_)-Ooo---\n\\endverbatim\n\n  If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a\n  degree starting north and turning clockwise.  ::SDL_HAPTIC_POLAR only uses\n  the first \\c dir parameter.  The cardinal directions would be:\n   - North: 0 (0 degrees)\n   - East: 9000 (90 degrees)\n   - South: 18000 (180 degrees)\n   - West: 27000 (270 degrees)\n\n  If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions\n  (X axis, Y axis and Z axis (with 3 axes)).  ::SDL_HAPTIC_CARTESIAN uses\n  the first three \\c dir parameters.  The cardinal directions would be:\n   - North:  0,-1, 0\n   - East:   1, 0, 0\n   - South:  0, 1, 0\n   - West:  -1, 0, 0\n\n  The Z axis represents the height of the effect if supported, otherwise\n  it's unused.  In cartesian encoding (1, 2) would be the same as (2, 4), you\n  can use any multiple you want, only the direction matters.\n\n  If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations.\n  The first two \\c dir parameters are used.  The \\c dir parameters are as\n  follows (all values are in hundredths of degrees):\n   - Degrees from (1, 0) rotated towards (0, 1).\n   - Degrees towards (0, 0, 1) (device needs at least 3 axes).\n\n\n  Example of force coming from the south with all encodings (force coming\n  from the south means the user will have to pull the stick to counteract):\n  \\code\n  SDL_HapticDirection direction;\n\n  // Cartesian directions\n  direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding.\n  direction.dir[0] = 0; // X position\n  direction.dir[1] = 1; // Y position\n  // Assuming the device has 2 axes, we don't need to specify third parameter.\n\n  // Polar directions\n  direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding.\n  direction.dir[0] = 18000; // Polar only uses first parameter\n\n  // Spherical coordinates\n  direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding\n  direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters.\n  \\endcode\n\n  \\sa SDL_HAPTIC_POLAR\n  \\sa SDL_HAPTIC_CARTESIAN\n  \\sa SDL_HAPTIC_SPHERICAL\n  \\sa SDL_HAPTIC_STEERING_AXIS\n  \\sa SDL_HapticEffect\n  \\sa SDL_HapticNumAxe...
[INFO] [stderr]       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: the link appears in this line:
[INFO] [stderr]               
[INFO] [stderr]               [ COMPUTER ]
[INFO] [stderr]                ^^^^^^^^^^
[INFO] [stderr]       = note: no item named `COMPUTER` in scope
[INFO] [stderr]       = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `HAPTIC`
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:13226:9
[INFO] [stderr]       |
[INFO] [stderr] 13226 | ... = "  \\brief Structure that represents a haptic direction.\n\n  This is the direction where the force comes from,\n  instead of the direction in which the force is exerted.\n\n  Directions can be specified by:\n   - ::SDL_HAPTIC_POLAR : Specified by polar coordinates.\n   - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates.\n   - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates.\n\n  Cardinal directions of the haptic device are relative to the positioning\n  of the device.  North is considered to be away from the user.\n\n  The following diagram represents the cardinal directions:\n  \\verbatim\n.--.\n|__| .-------.\n|=.| |.-----.|\n|--| ||     ||\n|  | |'-----'|\n|__|~')_____('\n[ COMPUTER ]\n\n\nNorth (0,-1)\n^\n|\n|\n(-1,0)  West <----[ HAPTIC ]----> East (1,0)\n|\n|\nv\nSouth (0,1)\n\n\n[ USER ]\n\\|||/\n(o o)\n---ooO-(_)-Ooo---\n\\endverbatim\n\n  If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a\n  degree starting north and turning clockwise.  ::SDL_HAPTIC_POLAR only uses\n  the first \\c dir parameter.  The cardinal directions would be:\n   - North: 0 (0 degrees)\n   - East: 9000 (90 degrees)\n   - South: 18000 (180 degrees)\n   - West: 27000 (270 degrees)\n\n  If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions\n  (X axis, Y axis and Z axis (with 3 axes)).  ::SDL_HAPTIC_CARTESIAN uses\n  the first three \\c dir parameters.  The cardinal directions would be:\n   - North:  0,-1, 0\n   - East:   1, 0, 0\n   - South:  0, 1, 0\n   - West:  -1, 0, 0\n\n  The Z axis represents the height of the effect if supported, otherwise\n  it's unused.  In cartesian encoding (1, 2) would be the same as (2, 4), you\n  can use any multiple you want, only the direction matters.\n\n  If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations.\n  The first two \\c dir parameters are used.  The \\c dir parameters are as\n  follows (all values are in hundredths of degrees):\n   - Degrees from (1, 0) rotated towards (0, 1).\n   - Degrees towards (0, 0, 1) (device needs at least 3 axes).\n\n\n  Example of force coming from the south with all encodings (force coming\n  from the south means the user will have to pull the stick to counteract):\n  \\code\n  SDL_HapticDirection direction;\n\n  // Cartesian directions\n  direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding.\n  direction.dir[0] = 0; // X position\n  direction.dir[1] = 1; // Y position\n  // Assuming the device has 2 axes, we don't need to specify third parameter.\n\n  // Polar directions\n  direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding.\n  direction.dir[0] = 18000; // Polar only uses first parameter\n\n  // Spherical coordinates\n  direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding\n  direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters.\n  \\endcode\n\n  \\sa SDL_HAPTIC_POLAR\n  \\sa SDL_HAPTIC_CARTESIAN\n  \\sa SDL_HAPTIC_SPHERICAL\n  \\sa SDL_HAPTIC_STEERING_AXIS\n  \\sa SDL_HapticEffect\n  \\sa SDL_HapticNumAxe...
[INFO] [stderr]       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: the link appears in this line:
[INFO] [stderr]               
[INFO] [stderr]               (-1,0)  West <----[ HAPTIC ]----> East (1,0)
[INFO] [stderr]                                  ^^^^^^^^
[INFO] [stderr]       = note: no item named `HAPTIC` in scope
[INFO] [stderr]       = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `USER`
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:13226:9
[INFO] [stderr]       |
[INFO] [stderr] 13226 | ... = "  \\brief Structure that represents a haptic direction.\n\n  This is the direction where the force comes from,\n  instead of the direction in which the force is exerted.\n\n  Directions can be specified by:\n   - ::SDL_HAPTIC_POLAR : Specified by polar coordinates.\n   - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates.\n   - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates.\n\n  Cardinal directions of the haptic device are relative to the positioning\n  of the device.  North is considered to be away from the user.\n\n  The following diagram represents the cardinal directions:\n  \\verbatim\n.--.\n|__| .-------.\n|=.| |.-----.|\n|--| ||     ||\n|  | |'-----'|\n|__|~')_____('\n[ COMPUTER ]\n\n\nNorth (0,-1)\n^\n|\n|\n(-1,0)  West <----[ HAPTIC ]----> East (1,0)\n|\n|\nv\nSouth (0,1)\n\n\n[ USER ]\n\\|||/\n(o o)\n---ooO-(_)-Ooo---\n\\endverbatim\n\n  If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a\n  degree starting north and turning clockwise.  ::SDL_HAPTIC_POLAR only uses\n  the first \\c dir parameter.  The cardinal directions would be:\n   - North: 0 (0 degrees)\n   - East: 9000 (90 degrees)\n   - South: 18000 (180 degrees)\n   - West: 27000 (270 degrees)\n\n  If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions\n  (X axis, Y axis and Z axis (with 3 axes)).  ::SDL_HAPTIC_CARTESIAN uses\n  the first three \\c dir parameters.  The cardinal directions would be:\n   - North:  0,-1, 0\n   - East:   1, 0, 0\n   - South:  0, 1, 0\n   - West:  -1, 0, 0\n\n  The Z axis represents the height of the effect if supported, otherwise\n  it's unused.  In cartesian encoding (1, 2) would be the same as (2, 4), you\n  can use any multiple you want, only the direction matters.\n\n  If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations.\n  The first two \\c dir parameters are used.  The \\c dir parameters are as\n  follows (all values are in hundredths of degrees):\n   - Degrees from (1, 0) rotated towards (0, 1).\n   - Degrees towards (0, 0, 1) (device needs at least 3 axes).\n\n\n  Example of force coming from the south with all encodings (force coming\n  from the south means the user will have to pull the stick to counteract):\n  \\code\n  SDL_HapticDirection direction;\n\n  // Cartesian directions\n  direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding.\n  direction.dir[0] = 0; // X position\n  direction.dir[1] = 1; // Y position\n  // Assuming the device has 2 axes, we don't need to specify third parameter.\n\n  // Polar directions\n  direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding.\n  direction.dir[0] = 18000; // Polar only uses first parameter\n\n  // Spherical coordinates\n  direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding\n  direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters.\n  \\endcode\n\n  \\sa SDL_HAPTIC_POLAR\n  \\sa SDL_HAPTIC_CARTESIAN\n  \\sa SDL_HAPTIC_SPHERICAL\n  \\sa SDL_HAPTIC_STEERING_AXIS\n  \\sa SDL_HapticEffect\n  \\sa SDL_HapticNumAxe...
[INFO] [stderr]       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: the link appears in this line:
[INFO] [stderr]               
[INFO] [stderr]               [ USER ]
[INFO] [stderr]                ^^^^^^
[INFO] [stderr]       = note: no item named `USER` in scope
[INFO] [stderr]       = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `0`
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:13226:9
[INFO] [stderr]       |
[INFO] [stderr] 13226 | ... = "  \\brief Structure that represents a haptic direction.\n\n  This is the direction where the force comes from,\n  instead of the direction in which the force is exerted.\n\n  Directions can be specified by:\n   - ::SDL_HAPTIC_POLAR : Specified by polar coordinates.\n   - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates.\n   - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates.\n\n  Cardinal directions of the haptic device are relative to the positioning\n  of the device.  North is considered to be away from the user.\n\n  The following diagram represents the cardinal directions:\n  \\verbatim\n.--.\n|__| .-------.\n|=.| |.-----.|\n|--| ||     ||\n|  | |'-----'|\n|__|~')_____('\n[ COMPUTER ]\n\n\nNorth (0,-1)\n^\n|\n|\n(-1,0)  West <----[ HAPTIC ]----> East (1,0)\n|\n|\nv\nSouth (0,1)\n\n\n[ USER ]\n\\|||/\n(o o)\n---ooO-(_)-Ooo---\n\\endverbatim\n\n  If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a\n  degree starting north and turning clockwise.  ::SDL_HAPTIC_POLAR only uses\n  the first \\c dir parameter.  The cardinal directions would be:\n   - North: 0 (0 degrees)\n   - East: 9000 (90 degrees)\n   - South: 18000 (180 degrees)\n   - West: 27000 (270 degrees)\n\n  If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions\n  (X axis, Y axis and Z axis (with 3 axes)).  ::SDL_HAPTIC_CARTESIAN uses\n  the first three \\c dir parameters.  The cardinal directions would be:\n   - North:  0,-1, 0\n   - East:   1, 0, 0\n   - South:  0, 1, 0\n   - West:  -1, 0, 0\n\n  The Z axis represents the height of the effect if supported, otherwise\n  it's unused.  In cartesian encoding (1, 2) would be the same as (2, 4), you\n  can use any multiple you want, only the direction matters.\n\n  If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations.\n  The first two \\c dir parameters are used.  The \\c dir parameters are as\n  follows (all values are in hundredths of degrees):\n   - Degrees from (1, 0) rotated towards (0, 1).\n   - Degrees towards (0, 0, 1) (device needs at least 3 axes).\n\n\n  Example of force coming from the south with all encodings (force coming\n  from the south means the user will have to pull the stick to counteract):\n  \\code\n  SDL_HapticDirection direction;\n\n  // Cartesian directions\n  direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding.\n  direction.dir[0] = 0; // X position\n  direction.dir[1] = 1; // Y position\n  // Assuming the device has 2 axes, we don't need to specify third parameter.\n\n  // Polar directions\n  direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding.\n  direction.dir[0] = 18000; // Polar only uses first parameter\n\n  // Spherical coordinates\n  direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding\n  direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters.\n  \\endcode\n\n  \\sa SDL_HAPTIC_POLAR\n  \\sa SDL_HAPTIC_CARTESIAN\n  \\sa SDL_HAPTIC_SPHERICAL\n  \\sa SDL_HAPTIC_STEERING_AXIS\n  \\sa SDL_HapticEffect\n  \\sa SDL_HapticNumAxe...
[INFO] [stderr]       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: the link appears in this line:
[INFO] [stderr]               
[INFO] [stderr]                 direction.dir[0] = 0; // X position
[INFO] [stderr]                               ^
[INFO] [stderr]       = note: no item named `0` in scope
[INFO] [stderr]       = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `1`
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:13226:9
[INFO] [stderr]       |
[INFO] [stderr] 13226 | ... = "  \\brief Structure that represents a haptic direction.\n\n  This is the direction where the force comes from,\n  instead of the direction in which the force is exerted.\n\n  Directions can be specified by:\n   - ::SDL_HAPTIC_POLAR : Specified by polar coordinates.\n   - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates.\n   - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates.\n\n  Cardinal directions of the haptic device are relative to the positioning\n  of the device.  North is considered to be away from the user.\n\n  The following diagram represents the cardinal directions:\n  \\verbatim\n.--.\n|__| .-------.\n|=.| |.-----.|\n|--| ||     ||\n|  | |'-----'|\n|__|~')_____('\n[ COMPUTER ]\n\n\nNorth (0,-1)\n^\n|\n|\n(-1,0)  West <----[ HAPTIC ]----> East (1,0)\n|\n|\nv\nSouth (0,1)\n\n\n[ USER ]\n\\|||/\n(o o)\n---ooO-(_)-Ooo---\n\\endverbatim\n\n  If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a\n  degree starting north and turning clockwise.  ::SDL_HAPTIC_POLAR only uses\n  the first \\c dir parameter.  The cardinal directions would be:\n   - North: 0 (0 degrees)\n   - East: 9000 (90 degrees)\n   - South: 18000 (180 degrees)\n   - West: 27000 (270 degrees)\n\n  If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions\n  (X axis, Y axis and Z axis (with 3 axes)).  ::SDL_HAPTIC_CARTESIAN uses\n  the first three \\c dir parameters.  The cardinal directions would be:\n   - North:  0,-1, 0\n   - East:   1, 0, 0\n   - South:  0, 1, 0\n   - West:  -1, 0, 0\n\n  The Z axis represents the height of the effect if supported, otherwise\n  it's unused.  In cartesian encoding (1, 2) would be the same as (2, 4), you\n  can use any multiple you want, only the direction matters.\n\n  If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations.\n  The first two \\c dir parameters are used.  The \\c dir parameters are as\n  follows (all values are in hundredths of degrees):\n   - Degrees from (1, 0) rotated towards (0, 1).\n   - Degrees towards (0, 0, 1) (device needs at least 3 axes).\n\n\n  Example of force coming from the south with all encodings (force coming\n  from the south means the user will have to pull the stick to counteract):\n  \\code\n  SDL_HapticDirection direction;\n\n  // Cartesian directions\n  direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding.\n  direction.dir[0] = 0; // X position\n  direction.dir[1] = 1; // Y position\n  // Assuming the device has 2 axes, we don't need to specify third parameter.\n\n  // Polar directions\n  direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding.\n  direction.dir[0] = 18000; // Polar only uses first parameter\n\n  // Spherical coordinates\n  direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding\n  direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters.\n  \\endcode\n\n  \\sa SDL_HAPTIC_POLAR\n  \\sa SDL_HAPTIC_CARTESIAN\n  \\sa SDL_HAPTIC_SPHERICAL\n  \\sa SDL_HAPTIC_STEERING_AXIS\n  \\sa SDL_HapticEffect\n  \\sa SDL_HapticNumAxe...
[INFO] [stderr]       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: the link appears in this line:
[INFO] [stderr]               
[INFO] [stderr]                 direction.dir[1] = 1; // Y position
[INFO] [stderr]                               ^
[INFO] [stderr]       = note: no item named `1` in scope
[INFO] [stderr]       = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `0`
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:13226:9
[INFO] [stderr]       |
[INFO] [stderr] 13226 | ... = "  \\brief Structure that represents a haptic direction.\n\n  This is the direction where the force comes from,\n  instead of the direction in which the force is exerted.\n\n  Directions can be specified by:\n   - ::SDL_HAPTIC_POLAR : Specified by polar coordinates.\n   - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates.\n   - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates.\n\n  Cardinal directions of the haptic device are relative to the positioning\n  of the device.  North is considered to be away from the user.\n\n  The following diagram represents the cardinal directions:\n  \\verbatim\n.--.\n|__| .-------.\n|=.| |.-----.|\n|--| ||     ||\n|  | |'-----'|\n|__|~')_____('\n[ COMPUTER ]\n\n\nNorth (0,-1)\n^\n|\n|\n(-1,0)  West <----[ HAPTIC ]----> East (1,0)\n|\n|\nv\nSouth (0,1)\n\n\n[ USER ]\n\\|||/\n(o o)\n---ooO-(_)-Ooo---\n\\endverbatim\n\n  If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a\n  degree starting north and turning clockwise.  ::SDL_HAPTIC_POLAR only uses\n  the first \\c dir parameter.  The cardinal directions would be:\n   - North: 0 (0 degrees)\n   - East: 9000 (90 degrees)\n   - South: 18000 (180 degrees)\n   - West: 27000 (270 degrees)\n\n  If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions\n  (X axis, Y axis and Z axis (with 3 axes)).  ::SDL_HAPTIC_CARTESIAN uses\n  the first three \\c dir parameters.  The cardinal directions would be:\n   - North:  0,-1, 0\n   - East:   1, 0, 0\n   - South:  0, 1, 0\n   - West:  -1, 0, 0\n\n  The Z axis represents the height of the effect if supported, otherwise\n  it's unused.  In cartesian encoding (1, 2) would be the same as (2, 4), you\n  can use any multiple you want, only the direction matters.\n\n  If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations.\n  The first two \\c dir parameters are used.  The \\c dir parameters are as\n  follows (all values are in hundredths of degrees):\n   - Degrees from (1, 0) rotated towards (0, 1).\n   - Degrees towards (0, 0, 1) (device needs at least 3 axes).\n\n\n  Example of force coming from the south with all encodings (force coming\n  from the south means the user will have to pull the stick to counteract):\n  \\code\n  SDL_HapticDirection direction;\n\n  // Cartesian directions\n  direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding.\n  direction.dir[0] = 0; // X position\n  direction.dir[1] = 1; // Y position\n  // Assuming the device has 2 axes, we don't need to specify third parameter.\n\n  // Polar directions\n  direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding.\n  direction.dir[0] = 18000; // Polar only uses first parameter\n\n  // Spherical coordinates\n  direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding\n  direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters.\n  \\endcode\n\n  \\sa SDL_HAPTIC_POLAR\n  \\sa SDL_HAPTIC_CARTESIAN\n  \\sa SDL_HAPTIC_SPHERICAL\n  \\sa SDL_HAPTIC_STEERING_AXIS\n  \\sa SDL_HapticEffect\n  \\sa SDL_HapticNumAxe...
[INFO] [stderr]       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: the link appears in this line:
[INFO] [stderr]               
[INFO] [stderr]                 direction.dir[0] = 18000; // Polar only uses first parameter
[INFO] [stderr]                               ^
[INFO] [stderr]       = note: no item named `0` in scope
[INFO] [stderr]       = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: unresolved link to `0`
[INFO] [stderr]      --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:13226:9
[INFO] [stderr]       |
[INFO] [stderr] 13226 | ... = "  \\brief Structure that represents a haptic direction.\n\n  This is the direction where the force comes from,\n  instead of the direction in which the force is exerted.\n\n  Directions can be specified by:\n   - ::SDL_HAPTIC_POLAR : Specified by polar coordinates.\n   - ::SDL_HAPTIC_CARTESIAN : Specified by cartesian coordinates.\n   - ::SDL_HAPTIC_SPHERICAL : Specified by spherical coordinates.\n\n  Cardinal directions of the haptic device are relative to the positioning\n  of the device.  North is considered to be away from the user.\n\n  The following diagram represents the cardinal directions:\n  \\verbatim\n.--.\n|__| .-------.\n|=.| |.-----.|\n|--| ||     ||\n|  | |'-----'|\n|__|~')_____('\n[ COMPUTER ]\n\n\nNorth (0,-1)\n^\n|\n|\n(-1,0)  West <----[ HAPTIC ]----> East (1,0)\n|\n|\nv\nSouth (0,1)\n\n\n[ USER ]\n\\|||/\n(o o)\n---ooO-(_)-Ooo---\n\\endverbatim\n\n  If type is ::SDL_HAPTIC_POLAR, direction is encoded by hundredths of a\n  degree starting north and turning clockwise.  ::SDL_HAPTIC_POLAR only uses\n  the first \\c dir parameter.  The cardinal directions would be:\n   - North: 0 (0 degrees)\n   - East: 9000 (90 degrees)\n   - South: 18000 (180 degrees)\n   - West: 27000 (270 degrees)\n\n  If type is ::SDL_HAPTIC_CARTESIAN, direction is encoded by three positions\n  (X axis, Y axis and Z axis (with 3 axes)).  ::SDL_HAPTIC_CARTESIAN uses\n  the first three \\c dir parameters.  The cardinal directions would be:\n   - North:  0,-1, 0\n   - East:   1, 0, 0\n   - South:  0, 1, 0\n   - West:  -1, 0, 0\n\n  The Z axis represents the height of the effect if supported, otherwise\n  it's unused.  In cartesian encoding (1, 2) would be the same as (2, 4), you\n  can use any multiple you want, only the direction matters.\n\n  If type is ::SDL_HAPTIC_SPHERICAL, direction is encoded by two rotations.\n  The first two \\c dir parameters are used.  The \\c dir parameters are as\n  follows (all values are in hundredths of degrees):\n   - Degrees from (1, 0) rotated towards (0, 1).\n   - Degrees towards (0, 0, 1) (device needs at least 3 axes).\n\n\n  Example of force coming from the south with all encodings (force coming\n  from the south means the user will have to pull the stick to counteract):\n  \\code\n  SDL_HapticDirection direction;\n\n  // Cartesian directions\n  direction.type = SDL_HAPTIC_CARTESIAN; // Using cartesian direction encoding.\n  direction.dir[0] = 0; // X position\n  direction.dir[1] = 1; // Y position\n  // Assuming the device has 2 axes, we don't need to specify third parameter.\n\n  // Polar directions\n  direction.type = SDL_HAPTIC_POLAR; // We'll be using polar direction encoding.\n  direction.dir[0] = 18000; // Polar only uses first parameter\n\n  // Spherical coordinates\n  direction.type = SDL_HAPTIC_SPHERICAL; // Spherical encoding\n  direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters.\n  \\endcode\n\n  \\sa SDL_HAPTIC_POLAR\n  \\sa SDL_HAPTIC_CARTESIAN\n  \\sa SDL_HAPTIC_SPHERICAL\n  \\sa SDL_HAPTIC_STEERING_AXIS\n  \\sa SDL_HapticEffect\n  \\sa SDL_HapticNumAxe...
[INFO] [stderr]       |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]       |
[INFO] [stderr]       = note: the link appears in this line:
[INFO] [stderr]               
[INFO] [stderr]                 direction.dir[0] = 9000; // Since we only have two axes we don't need more parameters.
[INFO] [stderr]                               ^
[INFO] [stderr]       = note: no item named `0` in scope
[INFO] [stderr]       = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stderr] 
[INFO] [stderr] warning: this URL is not a hyperlink
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:1906:13
[INFO] [stderr]      |
[INFO] [stderr] 1906 | ... = " Memory barriers are designed to prevent reads and writes from being\n reordered by the compiler and being seen out of order on multi-core CPUs.\n\n A typical pattern would be for thread A to write some data and a flag, and\n for thread B to read the flag and get the data. In this case you would\n insert a release barrier between writing the data and the flag,\n guaranteeing that the data write completes no later than the flag is\n written, and you would insert an acquire barrier between reading the flag\n and reading the data, to ensure that all the reads associated with the flag\n have completed.\n\n In this pattern you should always see a release barrier paired with an\n acquire barrier and you should gate the data reads/writes with a single\n flag variable.\n\n For more information on these semantics, take a look at the blog post:\n http://preshing.com/20120913/acquire-and-release-semantics\n\n \\since This function is available since SDL 2.0.6...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<http://preshing.com/20120913/acquire-and-release-semantics>`
[INFO] [stderr]      |
[INFO] [stderr]      = note: bare URLs are not automatically turned into clickable links
[INFO] [stderr]      = note: `#[warn(rustdoc::bare_urls)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: this URL is not a hyperlink
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:2128:13
[INFO] [stderr]      |
[INFO] [stderr] 2128 | ... = " Create a new thread with a specific stack size.\n\n SDL makes an attempt to report `name` to the system, so that debuggers can\n display it. Not all platforms support this.\n\n Thread naming is a little complicated: Most systems have very small limits\n for the string length (Haiku has 32 bytes, Linux currently has 16, Visual\n C++ 6.0 has _nine_!), and possibly other arbitrary rules. You'll have to\n see what happens with your system's debugger. The name should be UTF-8 (but\n using the naming limits of C identifiers is a better bet). There are no\n requirements for thread naming conventions, so long as the string is\n null-terminated UTF-8, but these guidelines are helpful in choosing a name:\n\n https://stackoverflow.com/questions/149932/naming-conventions-for-threads\n\n If a system imposes requirements, SDL will try to munge the string for it\n (truncate, etc), but the original string contents will be available from\n SDL_GetThreadName().\n\n The size (in bytes) of the new stack can be specified. Zero means \"use the\n system default\" which might be wildly different between platforms. x86\n Linux generally defaults to eight megabytes, an embedded device might be a\n few kilobytes instead. You generally need to specify a stack that is a\n multiple of the system's page size (in many cases, this is 4 kilobytes, but\n check your system documentation).\n\n In SDL 2.1, stack size will be folded into the original SDL_CreateThread\n function, but for backwards compatibility, this is currently a separate\n function.\n\n \\param fn the SDL_ThreadFunction function to call in the new thread\n \\param name the name of the thread\n \\param stacksize the size, in bytes, to allocate for the new thread stack.\n \\param data a pointer that is passed to `fn`\n \\returns an opaque pointer to the new thread object on success, NULL if the\n          new thread could not be created; call SDL_GetError() for more\n          information.\n\n \\since This function is available since SDL 2.0.9.\n\n \\sa SDL_WaitThrea...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://stackoverflow.com/questions/149932/naming-conventions-for-threads>`
[INFO] [stderr]      |
[INFO] [stderr]      = note: bare URLs are not automatically turned into clickable links
[INFO] [stderr] 
[INFO] [stderr] warning: could not parse code block as Rust code
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:2885:13
[INFO] [stderr]      |
[INFO] [stderr] 2885 | ... = " This function is a legacy means of opening the audio device.\n\n This function remains for compatibility with SDL 1.2, but also because it's\n slightly easier to use than the new functions in SDL 2.0. The new, more\n powerful, and preferred way to do this is SDL_OpenAudioDevice().\n\n This function is roughly equivalent to:\n\n ```c\n SDL_OpenAudioDevice(NULL, 0, desired, obtained, SDL_AUDIO_ALLOW_ANY_CHANGE);\n ```\n\n With two notable exceptions:\n\n - If `obtained` is NULL, we use `desired` (and allow no changes), which\n   means desired will be modified to have the correct values for silence,\n   etc, and SDL will convert any differences between your app's specific\n   request and the hardware behind the scenes.\n - The return value is always success or failure, and not a device ID, which\n   means you can only have one device open at a time with this function.\n\n \\param desired an SDL_AudioSpec structure representing the desired output\n                format. Please refer to the SDL_OpenAudioDevice\n                documentation for details on how to prepare this structure.\n \\param obtained an SDL_AudioSpec structure filled in with the actual\n                 parameters, or NULL.\n \\returns 0 if successful, placing the actual hardware parameters in the\n          structure pointed to by `obtained`.\n\n          If `obtained` is NULL, the audio data passed to the callback\n          function will be guaranteed to be in the requested format, and\n          will be automatically converted to the actual hardware audio\n          format if necessary. If `obtained` is NULL, `desired` will have\n          fields modified.\n\n          This function returns a negative error code on failure to open the\n          audio device or failure to set up the audio thread; call\n          SDL_GetError() for more information.\n\n \\since This function is available since SDL 2.0.0.\n\n \\sa SDL_CloseAudio\n \\sa SDL_LockAudio\n \\sa SDL_PauseAudio\n \\sa SDL_UnlockAudi...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: `#[warn(rustdoc::invalid_rust_codeblocks)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: could not parse code block as Rust code
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:2951:13
[INFO] [stderr]      |
[INFO] [stderr] 2951 | ... = " Load the audio data of a WAVE file into memory.\n\n Loading a WAVE file requires `src`, `spec`, `audio_buf` and `audio_len` to\n be valid pointers. The entire data portion of the file is then loaded into\n memory and decoded if necessary.\n\n If `freesrc` is non-zero, the data source gets automatically closed and\n freed before the function returns.\n\n Supported formats are RIFF WAVE files with the formats PCM (8, 16, 24, and\n 32 bits), IEEE Float (32 bits), Microsoft ADPCM and IMA ADPCM (4 bits), and\n A-law and mu-law (8 bits). Other formats are currently unsupported and\n cause an error.\n\n If this function succeeds, the pointer returned by it is equal to `spec`\n and the pointer to the audio data allocated by the function is written to\n `audio_buf` and its length in bytes to `audio_len`. The SDL_AudioSpec\n members `freq`, `channels`, and `format` are set to the values of the audio\n data in the buffer. The `samples` member is set to a sane default and all\n others are set to zero.\n\n It's necessary to use SDL_FreeWAV() to free the audio data returned in\n `audio_buf` when it is no longer used.\n\n Because of the underspecification of the .WAV format, there are many\n problematic files in the wild that cause issues with strict decoders. To\n provide compatibility with these files, this decoder is lenient in regards\n to the truncation of the file, the fact chunk, and the size of the RIFF\n chunk. The hints `SDL_HINT_WAVE_RIFF_CHUNK_SIZE`,\n `SDL_HINT_WAVE_TRUNCATION`, and `SDL_HINT_WAVE_FACT_CHUNK` can be used to\n tune the behavior of the loading process.\n\n Any file that is invalid (due to truncation, corruption, or wrong values in\n the headers), too big, or unsupported causes an error. Additionally, any\n critical I/O error from the data source will terminate the loading process\n with an error. The function returns NULL on error and in all cases (with\n the exception of `src` being NULL), an appropriate error message will be\n set.\n\n It is required that the data source supports seeking.\n\n Example:\n\n ```c\n SDL_LoadWAV_RW(SDL_RWFromFile(\"sample.wav\", \"rb\"), 1, &spec, &buf, &len);\n ```\n\n Note that the SDL_LoadWAV macro does this same thing for you, but in a less\n messy way:\n\n ```c\n SDL_LoadWAV(\"sample.wav\", &spec, &buf, &len);\n ```\n\n \\param src The data source for the WAVE data\n \\param freesrc If non-zero, SDL will _always_ free the data source\n \\param spec An SDL_AudioSpec that will be filled in with the wave file's\n             format details\n \\param audio_buf A pointer filled with the audio data, allocated by the\n                  function.\n \\param audio_len A pointer filled with the length of the audio data buffer\n                  in bytes\n \\returns This function, if successfully called, returns `spec`, which will\n          be filled with the audio data format of the wave source data.\n          `audio_buf` will be filled with a pointer to an allocated buffer\n          containing the audio data, and `audio_len` is filled with the\n          length of that audio buffer in bytes.\n\n          This function returns NULL if the .WAV file cannot be opened, uses\n          an unknown data format, or is corrupt; call SDL_GetError() for\n          more information.\n\n          When the application is done with the data returned in\n          `audio_buf`, it should call SDL_FreeWAV() to dispose of it.\n\n \\since This function is available since SDL 2.0.0.\n\n \\sa SDL_FreeWAV\n \\sa SDL_LoadWA...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr] 
[INFO] [stderr] warning: this URL is not a hyperlink
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:7336:13
[INFO] [stderr]      |
[INFO] [stderr] 7336 | ... = " Set the swap interval for the current OpenGL context.\n\n Some systems allow specifying -1 for the interval, to enable adaptive\n vsync. Adaptive vsync works the same as vsync, but if you've already missed\n the vertical retrace for a given frame, it swaps buffers immediately, which\n might be less jarring for the user during occasional framerate drops. If an\n application requests adaptive vsync and the system does not support it,\n this function will fail and return -1. In such a case, you should probably\n retry the call with 1 for the interval.\n\n Adaptive vsync is implemented for some glX drivers with\n GLX_EXT_swap_control_tear, and for some Windows drivers with\n WGL_EXT_swap_control_tear.\n\n Read more on the Khronos wiki:\n https://www.khronos.org/opengl/wiki/Swap_Interval#Adaptive_Vsync\n\n \\param interval 0 for immediate updates, 1 for updates synchronized with\n                 the vertical retrace, -1 for adaptive vsync\n \\returns 0 on success or -1 if setting the swap interval is not supported;\n          call SDL_GetError() for more information.\n\n \\since This function is available since SDL 2.0.0.\n\n \\sa SDL_GL_GetSwapInterva...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://www.khronos.org/opengl/wiki/Swap_Interval#Adaptive_Vsync>`
[INFO] [stderr]      |
[INFO] [stderr]      = note: bare URLs are not automatically turned into clickable links
[INFO] [stderr] 
[INFO] [stderr] warning: could not parse code block as Rust code
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:8735:13
[INFO] [stderr]      |
[INFO] [stderr] 8735 | ... = " Enable/disable joystick event polling.\n\n If joystick events are disabled, you must call SDL_JoystickUpdate()\n yourself and manually check the state of the joystick when you want\n joystick information.\n\n It is recommended that you leave joystick event handling enabled.\n\n **WARNING**: Calling this function may delete all events currently in SDL's\n event queue.\n\n \\param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE`\n \\returns 1 if enabled, 0 if disabled, or a negative error code on failure;\n          call SDL_GetError() for more information.\n\n          If `state` is `SDL_QUERY` then the current state is returned,\n          otherwise the new processing state is returned.\n\n \\since This function is available since SDL 2.0.0.\n\n \\sa SDL_GameControllerEventStat...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr]      = note: error from rustc: unknown start of token: `
[INFO] [stderr] 
[INFO] [stderr] warning: this URL is not a hyperlink
[INFO] [stderr]     --> /opt/rustwide/target/x86_64-unknown-linux-gnu/debug/build/sdl2-sys-33203a3758668123/out/sdl_bindings.rs:7352:9
[INFO] [stderr]      |
[INFO] [stderr] 7352 | ... = "  \\brief The SDL keyboard scancode representation.\n\n  Values of this type are used to represent keyboard keys, among other places\n  in the \\link SDL_Keysym::scancode key.keysym.scancode \\endlink field of the\n  SDL_Event structure.\n\n  The values in this enumeration are based on the USB usage page standard:\n  https://www.usb.org/sites/default/files/documents/hut1_12v2.pd...
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf>`
[INFO] [stderr]      |
[INFO] [stderr]      = note: bare URLs are not automatically turned into clickable links
[INFO] [stderr] 
[INFO] [stderr] warning: `sdl2-sys` (lib doc) generated 17 warnings (run `cargo fix --lib -p sdl2-sys` to apply 4 suggestions)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.22s
[INFO] [stderr]    Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/sdl2_sys/index.html
[INFO] running `Command { std: "docker" "inspect" "c5a9bef2b82896c48cad690c3ddb45db6f2e124189859dddcbd905fd969d1e1c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c5a9bef2b82896c48cad690c3ddb45db6f2e124189859dddcbd905fd969d1e1c", kill_on_drop: false }`
[INFO] [stdout] c5a9bef2b82896c48cad690c3ddb45db6f2e124189859dddcbd905fd969d1e1c