1
2
3
/* automatically generated by rust-bindgen */

pub const _SYS_TIME_H : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 200809 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __STDC_NO_THREADS__ : u32 = 1 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 27 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const _BITS_TYPES_H : u32 = 1 ; pub const _BITS_TYPESIZES_H : u32 = 1 ; pub const __OFF_T_MATCHES_OFF64_T : u32 = 1 ; pub const __INO_T_MATCHES_INO64_T : u32 = 1 ; pub const __RLIM_T_MATCHES_RLIM64_T : u32 = 1 ; pub const __FD_SETSIZE : u32 = 1024 ; pub const __time_t_defined : u32 = 1 ; pub const __timeval_defined : u32 = 1 ; pub const _SYS_SELECT_H : u32 = 1 ; pub const __FD_ZERO_STOS : & 'static [ u8 ; 6usize ] = b"stosq\0" ; pub const __sigset_t_defined : u32 = 1 ; pub const __timespec_defined : u32 = 1 ; pub const FD_SETSIZE : u32 = 1024 ; pub const _SYS_IOCTL_H : u32 = 1 ; pub const _IOC_NRBITS : u32 = 8 ; pub const _IOC_TYPEBITS : u32 = 8 ; pub const _IOC_SIZEBITS : u32 = 14 ; pub const _IOC_DIRBITS : u32 = 2 ; pub const _IOC_NRMASK : u32 = 255 ; pub const _IOC_TYPEMASK : u32 = 255 ; pub const _IOC_SIZEMASK : u32 = 16383 ; pub const _IOC_DIRMASK : u32 = 3 ; pub const _IOC_NRSHIFT : u32 = 0 ; pub const _IOC_TYPESHIFT : u32 = 8 ; pub const _IOC_SIZESHIFT : u32 = 16 ; pub const _IOC_DIRSHIFT : u32 = 30 ; pub const _IOC_NONE : u32 = 0 ; pub const _IOC_WRITE : u32 = 1 ; pub const _IOC_READ : u32 = 2 ; pub const IOC_IN : u32 = 1073741824 ; pub const IOC_OUT : u32 = 2147483648 ; pub const IOC_INOUT : u32 = 3221225472 ; pub const IOCSIZE_MASK : u32 = 1073676288 ; pub const IOCSIZE_SHIFT : u32 = 16 ; pub const TCGETS : u32 = 21505 ; pub const TCSETS : u32 = 21506 ; pub const TCSETSW : u32 = 21507 ; pub const TCSETSF : u32 = 21508 ; pub const TCGETA : u32 = 21509 ; pub const TCSETA : u32 = 21510 ; pub const TCSETAW : u32 = 21511 ; pub const TCSETAF : u32 = 21512 ; pub const TCSBRK : u32 = 21513 ; pub const TCXONC : u32 = 21514 ; pub const TCFLSH : u32 = 21515 ; pub const TIOCEXCL : u32 = 21516 ; pub const TIOCNXCL : u32 = 21517 ; pub const TIOCSCTTY : u32 = 21518 ; pub const TIOCGPGRP : u32 = 21519 ; pub const TIOCSPGRP : u32 = 21520 ; pub const TIOCOUTQ : u32 = 21521 ; pub const TIOCSTI : u32 = 21522 ; pub const TIOCGWINSZ : u32 = 21523 ; pub const TIOCSWINSZ : u32 = 21524 ; pub const TIOCMGET : u32 = 21525 ; pub const TIOCMBIS : u32 = 21526 ; pub const TIOCMBIC : u32 = 21527 ; pub const TIOCMSET : u32 = 21528 ; pub const TIOCGSOFTCAR : u32 = 21529 ; pub const TIOCSSOFTCAR : u32 = 21530 ; pub const FIONREAD : u32 = 21531 ; pub const TIOCINQ : u32 = 21531 ; pub const TIOCLINUX : u32 = 21532 ; pub const TIOCCONS : u32 = 21533 ; pub const TIOCGSERIAL : u32 = 21534 ; pub const TIOCSSERIAL : u32 = 21535 ; pub const TIOCPKT : u32 = 21536 ; pub const FIONBIO : u32 = 21537 ; pub const TIOCNOTTY : u32 = 21538 ; pub const TIOCSETD : u32 = 21539 ; pub const TIOCGETD : u32 = 21540 ; pub const TCSBRKP : u32 = 21541 ; pub const TIOCSBRK : u32 = 21543 ; pub const TIOCCBRK : u32 = 21544 ; pub const TIOCGSID : u32 = 21545 ; pub const TIOCGRS485 : u32 = 21550 ; pub const TIOCSRS485 : u32 = 21551 ; pub const TCGETX : u32 = 21554 ; pub const TCSETX : u32 = 21555 ; pub const TCSETXF : u32 = 21556 ; pub const TCSETXW : u32 = 21557 ; pub const TIOCVHANGUP : u32 = 21559 ; pub const FIONCLEX : u32 = 21584 ; pub const FIOCLEX : u32 = 21585 ; pub const FIOASYNC : u32 = 21586 ; pub const TIOCSERCONFIG : u32 = 21587 ; pub const TIOCSERGWILD : u32 = 21588 ; pub const TIOCSERSWILD : u32 = 21589 ; pub const TIOCGLCKTRMIOS : u32 = 21590 ; pub const TIOCSLCKTRMIOS : u32 = 21591 ; pub const TIOCSERGSTRUCT : u32 = 21592 ; pub const TIOCSERGETLSR : u32 = 21593 ; pub const TIOCSERGETMULTI : u32 = 21594 ; pub const TIOCSERSETMULTI : u32 = 21595 ; pub const TIOCMIWAIT : u32 = 21596 ; pub const TIOCGICOUNT : u32 = 21597 ; pub const FIOQSIZE : u32 = 21600 ; pub const TIOCPKT_DATA : u32 = 0 ; pub const TIOCPKT_FLUSHREAD : u32 = 1 ; pub const TIOCPKT_FLUSHWRITE : u32 = 2 ; pub const TIOCPKT_STOP : u32 = 4 ; pub const TIOCPKT_START : u32 = 8 ; pub const TIOCPKT_NOSTOP : u32 = 16 ; pub const TIOCPKT_DOSTOP : u32 = 32 ; pub const TIOCPKT_IOCTL : u32 = 64 ; pub const TIOCSER_TEMT : u32 = 1 ; pub const SIOCADDRT : u32 = 35083 ; pub const SIOCDELRT : u32 = 35084 ; pub const SIOCRTMSG : u32 = 35085 ; pub const SIOCGIFNAME : u32 = 35088 ; pub const SIOCSIFLINK : u32 = 35089 ; pub const SIOCGIFCONF : u32 = 35090 ; pub const SIOCGIFFLAGS : u32 = 35091 ; pub const SIOCSIFFLAGS : u32 = 35092 ; pub const SIOCGIFADDR : u32 = 35093 ; pub const SIOCSIFADDR : u32 = 35094 ; pub const SIOCGIFDSTADDR : u32 = 35095 ; pub const SIOCSIFDSTADDR : u32 = 35096 ; pub const SIOCGIFBRDADDR : u32 = 35097 ; pub const SIOCSIFBRDADDR : u32 = 35098 ; pub const SIOCGIFNETMASK : u32 = 35099 ; pub const SIOCSIFNETMASK : u32 = 35100 ; pub const SIOCGIFMETRIC : u32 = 35101 ; pub const SIOCSIFMETRIC : u32 = 35102 ; pub const SIOCGIFMEM : u32 = 35103 ; pub const SIOCSIFMEM : u32 = 35104 ; pub const SIOCGIFMTU : u32 = 35105 ; pub const SIOCSIFMTU : u32 = 35106 ; pub const SIOCSIFNAME : u32 = 35107 ; pub const SIOCSIFHWADDR : u32 = 35108 ; pub const SIOCGIFENCAP : u32 = 35109 ; pub const SIOCSIFENCAP : u32 = 35110 ; pub const SIOCGIFHWADDR : u32 = 35111 ; pub const SIOCGIFSLAVE : u32 = 35113 ; pub const SIOCSIFSLAVE : u32 = 35120 ; pub const SIOCADDMULTI : u32 = 35121 ; pub const SIOCDELMULTI : u32 = 35122 ; pub const SIOCGIFINDEX : u32 = 35123 ; pub const SIOGIFINDEX : u32 = 35123 ; pub const SIOCSIFPFLAGS : u32 = 35124 ; pub const SIOCGIFPFLAGS : u32 = 35125 ; pub const SIOCDIFADDR : u32 = 35126 ; pub const SIOCSIFHWBROADCAST : u32 = 35127 ; pub const SIOCGIFCOUNT : u32 = 35128 ; pub const SIOCGIFBR : u32 = 35136 ; pub const SIOCSIFBR : u32 = 35137 ; pub const SIOCGIFTXQLEN : u32 = 35138 ; pub const SIOCSIFTXQLEN : u32 = 35139 ; pub const SIOCDARP : u32 = 35155 ; pub const SIOCGARP : u32 = 35156 ; pub const SIOCSARP : u32 = 35157 ; pub const SIOCDRARP : u32 = 35168 ; pub const SIOCGRARP : u32 = 35169 ; pub const SIOCSRARP : u32 = 35170 ; pub const SIOCGIFMAP : u32 = 35184 ; pub const SIOCSIFMAP : u32 = 35185 ; pub const SIOCADDDLCI : u32 = 35200 ; pub const SIOCDELDLCI : u32 = 35201 ; pub const SIOCDEVPRIVATE : u32 = 35312 ; pub const SIOCPROTOPRIVATE : u32 = 35296 ; pub const NCC : u32 = 8 ; pub const TIOCM_LE : u32 = 1 ; pub const TIOCM_DTR : u32 = 2 ; pub const TIOCM_RTS : u32 = 4 ; pub const TIOCM_ST : u32 = 8 ; pub const TIOCM_SR : u32 = 16 ; pub const TIOCM_CTS : u32 = 32 ; pub const TIOCM_CAR : u32 = 64 ; pub const TIOCM_RNG : u32 = 128 ; pub const TIOCM_DSR : u32 = 256 ; pub const TIOCM_CD : u32 = 64 ; pub const TIOCM_RI : u32 = 128 ; pub const N_TTY : u32 = 0 ; pub const N_SLIP : u32 = 1 ; pub const N_MOUSE : u32 = 2 ; pub const N_PPP : u32 = 3 ; pub const N_STRIP : u32 = 4 ; pub const N_AX25 : u32 = 5 ; pub const N_X25 : u32 = 6 ; pub const N_6PACK : u32 = 7 ; pub const N_MASC : u32 = 8 ; pub const N_R3964 : u32 = 9 ; pub const N_PROFIBUS_FDL : u32 = 10 ; pub const N_IRDA : u32 = 11 ; pub const N_SMSBLOCK : u32 = 12 ; pub const N_HDLC : u32 = 13 ; pub const N_SYNC_PPP : u32 = 14 ; pub const N_HCI : u32 = 15 ; pub const CEOL : u8 = 0u8 ; pub const CERASE : u32 = 127 ; pub const CSTATUS : u8 = 0u8 ; pub const CMIN : u32 = 1 ; pub const CQUIT : u32 = 28 ; pub const CTIME : u32 = 0 ; pub const CBRK : u8 = 0u8 ; pub const _SYS_TYPES_H : u32 = 1 ; pub const __clock_t_defined : u32 = 1 ; pub const __clockid_t_defined : u32 = 1 ; pub const __timer_t_defined : u32 = 1 ; pub const _BITS_STDINT_INTN_H : u32 = 1 ; pub const __BIT_TYPES_DEFINED__ : u32 = 1 ; pub const _ENDIAN_H : u32 = 1 ; pub const __LITTLE_ENDIAN : u32 = 1234 ; pub const __BIG_ENDIAN : u32 = 4321 ; pub const __PDP_ENDIAN : u32 = 3412 ; pub const __BYTE_ORDER : u32 = 1234 ; pub const __FLOAT_WORD_ORDER : u32 = 1234 ; pub const LITTLE_ENDIAN : u32 = 1234 ; pub const BIG_ENDIAN : u32 = 4321 ; pub const PDP_ENDIAN : u32 = 3412 ; pub const BYTE_ORDER : u32 = 1234 ; pub const _BITS_BYTESWAP_H : u32 = 1 ; pub const _BITS_UINTN_IDENTITY_H : u32 = 1 ; pub const _SYS_SYSMACROS_H : u32 = 1 ; pub const _BITS_SYSMACROS_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_COMMON_H : u32 = 1 ; pub const _THREAD_SHARED_TYPES_H : u32 = 1 ; pub const _BITS_PTHREADTYPES_ARCH_H : u32 = 1 ; pub const __SIZEOF_PTHREAD_MUTEX_T : u32 = 40 ; pub const __SIZEOF_PTHREAD_ATTR_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_RWLOCK_T : u32 = 56 ; pub const __SIZEOF_PTHREAD_BARRIER_T : u32 = 32 ; pub const __SIZEOF_PTHREAD_MUTEXATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_COND_T : u32 = 48 ; pub const __SIZEOF_PTHREAD_CONDATTR_T : u32 = 4 ; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T : u32 = 8 ; pub const __SIZEOF_PTHREAD_BARRIERATTR_T : u32 = 4 ; pub const __PTHREAD_MUTEX_LOCK_ELISION : u32 = 1 ; pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND : u32 = 0 ; pub const __PTHREAD_MUTEX_USE_UNION : u32 = 0 ; pub const __PTHREAD_RWLOCK_INT_FLAGS_SHARED : u32 = 1 ; pub const __PTHREAD_MUTEX_HAVE_PREV : u32 = 1 ; pub const __have_pthread_attr_t : u32 = 1 ; pub const __BITS_PER_LONG : u32 = 64 ; pub const INPUT_PROP_POINTER : u32 = 0 ; pub const INPUT_PROP_DIRECT : u32 = 1 ; pub const INPUT_PROP_BUTTONPAD : u32 = 2 ; pub const INPUT_PROP_SEMI_MT : u32 = 3 ; pub const INPUT_PROP_TOPBUTTONPAD : u32 = 4 ; pub const INPUT_PROP_POINTING_STICK : u32 = 5 ; pub const INPUT_PROP_ACCELEROMETER : u32 = 6 ; pub const INPUT_PROP_MAX : u32 = 31 ; pub const INPUT_PROP_CNT : u32 = 32 ; pub const EV_SYN : u32 = 0 ; pub const EV_KEY : u32 = 1 ; pub const EV_REL : u32 = 2 ; pub const EV_ABS : u32 = 3 ; pub const EV_MSC : u32 = 4 ; pub const EV_SW : u32 = 5 ; pub const EV_LED : u32 = 17 ; pub const EV_SND : u32 = 18 ; pub const EV_REP : u32 = 20 ; pub const EV_FF : u32 = 21 ; pub const EV_PWR : u32 = 22 ; pub const EV_FF_STATUS : u32 = 23 ; pub const EV_MAX : u32 = 31 ; pub const EV_CNT : u32 = 32 ; pub const SYN_REPORT : u32 = 0 ; pub const SYN_CONFIG : u32 = 1 ; pub const SYN_MT_REPORT : u32 = 2 ; pub const SYN_DROPPED : u32 = 3 ; pub const SYN_MAX : u32 = 15 ; pub const SYN_CNT : u32 = 16 ; pub const KEY_RESERVED : u32 = 0 ; pub const KEY_ESC : u32 = 1 ; pub const KEY_1 : u32 = 2 ; pub const KEY_2 : u32 = 3 ; pub const KEY_3 : u32 = 4 ; pub const KEY_4 : u32 = 5 ; pub const KEY_5 : u32 = 6 ; pub const KEY_6 : u32 = 7 ; pub const KEY_7 : u32 = 8 ; pub const KEY_8 : u32 = 9 ; pub const KEY_9 : u32 = 10 ; pub const KEY_0 : u32 = 11 ; pub const KEY_MINUS : u32 = 12 ; pub const KEY_EQUAL : u32 = 13 ; pub const KEY_BACKSPACE : u32 = 14 ; pub const KEY_TAB : u32 = 15 ; pub const KEY_Q : u32 = 16 ; pub const KEY_W : u32 = 17 ; pub const KEY_E : u32 = 18 ; pub const KEY_R : u32 = 19 ; pub const KEY_T : u32 = 20 ; pub const KEY_Y : u32 = 21 ; pub const KEY_U : u32 = 22 ; pub const KEY_I : u32 = 23 ; pub const KEY_O : u32 = 24 ; pub const KEY_P : u32 = 25 ; pub const KEY_LEFTBRACE : u32 = 26 ; pub const KEY_RIGHTBRACE : u32 = 27 ; pub const KEY_ENTER : u32 = 28 ; pub const KEY_LEFTCTRL : u32 = 29 ; pub const KEY_A : u32 = 30 ; pub const KEY_S : u32 = 31 ; pub const KEY_D : u32 = 32 ; pub const KEY_F : u32 = 33 ; pub const KEY_G : u32 = 34 ; pub const KEY_H : u32 = 35 ; pub const KEY_J : u32 = 36 ; pub const KEY_K : u32 = 37 ; pub const KEY_L : u32 = 38 ; pub const KEY_SEMICOLON : u32 = 39 ; pub const KEY_APOSTROPHE : u32 = 40 ; pub const KEY_GRAVE : u32 = 41 ; pub const KEY_LEFTSHIFT : u32 = 42 ; pub const KEY_BACKSLASH : u32 = 43 ; pub const KEY_Z : u32 = 44 ; pub const KEY_X : u32 = 45 ; pub const KEY_C : u32 = 46 ; pub const KEY_V : u32 = 47 ; pub const KEY_B : u32 = 48 ; pub const KEY_N : u32 = 49 ; pub const KEY_M : u32 = 50 ; pub const KEY_COMMA : u32 = 51 ; pub const KEY_DOT : u32 = 52 ; pub const KEY_SLASH : u32 = 53 ; pub const KEY_RIGHTSHIFT : u32 = 54 ; pub const KEY_KPASTERISK : u32 = 55 ; pub const KEY_LEFTALT : u32 = 56 ; pub const KEY_SPACE : u32 = 57 ; pub const KEY_CAPSLOCK : u32 = 58 ; pub const KEY_F1 : u32 = 59 ; pub const KEY_F2 : u32 = 60 ; pub const KEY_F3 : u32 = 61 ; pub const KEY_F4 : u32 = 62 ; pub const KEY_F5 : u32 = 63 ; pub const KEY_F6 : u32 = 64 ; pub const KEY_F7 : u32 = 65 ; pub const KEY_F8 : u32 = 66 ; pub const KEY_F9 : u32 = 67 ; pub const KEY_F10 : u32 = 68 ; pub const KEY_NUMLOCK : u32 = 69 ; pub const KEY_SCROLLLOCK : u32 = 70 ; pub const KEY_KP7 : u32 = 71 ; pub const KEY_KP8 : u32 = 72 ; pub const KEY_KP9 : u32 = 73 ; pub const KEY_KPMINUS : u32 = 74 ; pub const KEY_KP4 : u32 = 75 ; pub const KEY_KP5 : u32 = 76 ; pub const KEY_KP6 : u32 = 77 ; pub const KEY_KPPLUS : u32 = 78 ; pub const KEY_KP1 : u32 = 79 ; pub const KEY_KP2 : u32 = 80 ; pub const KEY_KP3 : u32 = 81 ; pub const KEY_KP0 : u32 = 82 ; pub const KEY_KPDOT : u32 = 83 ; pub const KEY_ZENKAKUHANKAKU : u32 = 85 ; pub const KEY_102ND : u32 = 86 ; pub const KEY_F11 : u32 = 87 ; pub const KEY_F12 : u32 = 88 ; pub const KEY_RO : u32 = 89 ; pub const KEY_KATAKANA : u32 = 90 ; pub const KEY_HIRAGANA : u32 = 91 ; pub const KEY_HENKAN : u32 = 92 ; pub const KEY_KATAKANAHIRAGANA : u32 = 93 ; pub const KEY_MUHENKAN : u32 = 94 ; pub const KEY_KPJPCOMMA : u32 = 95 ; pub const KEY_KPENTER : u32 = 96 ; pub const KEY_RIGHTCTRL : u32 = 97 ; pub const KEY_KPSLASH : u32 = 98 ; pub const KEY_SYSRQ : u32 = 99 ; pub const KEY_RIGHTALT : u32 = 100 ; pub const KEY_LINEFEED : u32 = 101 ; pub const KEY_HOME : u32 = 102 ; pub const KEY_UP : u32 = 103 ; pub const KEY_PAGEUP : u32 = 104 ; pub const KEY_LEFT : u32 = 105 ; pub const KEY_RIGHT : u32 = 106 ; pub const KEY_END : u32 = 107 ; pub const KEY_DOWN : u32 = 108 ; pub const KEY_PAGEDOWN : u32 = 109 ; pub const KEY_INSERT : u32 = 110 ; pub const KEY_DELETE : u32 = 111 ; pub const KEY_MACRO : u32 = 112 ; pub const KEY_MUTE : u32 = 113 ; pub const KEY_VOLUMEDOWN : u32 = 114 ; pub const KEY_VOLUMEUP : u32 = 115 ; pub const KEY_POWER : u32 = 116 ; pub const KEY_KPEQUAL : u32 = 117 ; pub const KEY_KPPLUSMINUS : u32 = 118 ; pub const KEY_PAUSE : u32 = 119 ; pub const KEY_SCALE : u32 = 120 ; pub const KEY_KPCOMMA : u32 = 121 ; pub const KEY_HANGEUL : u32 = 122 ; pub const KEY_HANGUEL : u32 = 122 ; pub const KEY_HANJA : u32 = 123 ; pub const KEY_YEN : u32 = 124 ; pub const KEY_LEFTMETA : u32 = 125 ; pub const KEY_RIGHTMETA : u32 = 126 ; pub const KEY_COMPOSE : u32 = 127 ; pub const KEY_STOP : u32 = 128 ; pub const KEY_AGAIN : u32 = 129 ; pub const KEY_PROPS : u32 = 130 ; pub const KEY_UNDO : u32 = 131 ; pub const KEY_FRONT : u32 = 132 ; pub const KEY_COPY : u32 = 133 ; pub const KEY_OPEN : u32 = 134 ; pub const KEY_PASTE : u32 = 135 ; pub const KEY_FIND : u32 = 136 ; pub const KEY_CUT : u32 = 137 ; pub const KEY_HELP : u32 = 138 ; pub const KEY_MENU : u32 = 139 ; pub const KEY_CALC : u32 = 140 ; pub const KEY_SETUP : u32 = 141 ; pub const KEY_SLEEP : u32 = 142 ; pub const KEY_WAKEUP : u32 = 143 ; pub const KEY_FILE : u32 = 144 ; pub const KEY_SENDFILE : u32 = 145 ; pub const KEY_DELETEFILE : u32 = 146 ; pub const KEY_XFER : u32 = 147 ; pub const KEY_PROG1 : u32 = 148 ; pub const KEY_PROG2 : u32 = 149 ; pub const KEY_WWW : u32 = 150 ; pub const KEY_MSDOS : u32 = 151 ; pub const KEY_COFFEE : u32 = 152 ; pub const KEY_SCREENLOCK : u32 = 152 ; pub const KEY_ROTATE_DISPLAY : u32 = 153 ; pub const KEY_DIRECTION : u32 = 153 ; pub const KEY_CYCLEWINDOWS : u32 = 154 ; pub const KEY_MAIL : u32 = 155 ; pub const KEY_BOOKMARKS : u32 = 156 ; pub const KEY_COMPUTER : u32 = 157 ; pub const KEY_BACK : u32 = 158 ; pub const KEY_FORWARD : u32 = 159 ; pub const KEY_CLOSECD : u32 = 160 ; pub const KEY_EJECTCD : u32 = 161 ; pub const KEY_EJECTCLOSECD : u32 = 162 ; pub const KEY_NEXTSONG : u32 = 163 ; pub const KEY_PLAYPAUSE : u32 = 164 ; pub const KEY_PREVIOUSSONG : u32 = 165 ; pub const KEY_STOPCD : u32 = 166 ; pub const KEY_RECORD : u32 = 167 ; pub const KEY_REWIND : u32 = 168 ; pub const KEY_PHONE : u32 = 169 ; pub const KEY_ISO : u32 = 170 ; pub const KEY_CONFIG : u32 = 171 ; pub const KEY_HOMEPAGE : u32 = 172 ; pub const KEY_REFRESH : u32 = 173 ; pub const KEY_EXIT : u32 = 174 ; pub const KEY_MOVE : u32 = 175 ; pub const KEY_EDIT : u32 = 176 ; pub const KEY_SCROLLUP : u32 = 177 ; pub const KEY_SCROLLDOWN : u32 = 178 ; pub const KEY_KPLEFTPAREN : u32 = 179 ; pub const KEY_KPRIGHTPAREN : u32 = 180 ; pub const KEY_NEW : u32 = 181 ; pub const KEY_REDO : u32 = 182 ; pub const KEY_F13 : u32 = 183 ; pub const KEY_F14 : u32 = 184 ; pub const KEY_F15 : u32 = 185 ; pub const KEY_F16 : u32 = 186 ; pub const KEY_F17 : u32 = 187 ; pub const KEY_F18 : u32 = 188 ; pub const KEY_F19 : u32 = 189 ; pub const KEY_F20 : u32 = 190 ; pub const KEY_F21 : u32 = 191 ; pub const KEY_F22 : u32 = 192 ; pub const KEY_F23 : u32 = 193 ; pub const KEY_F24 : u32 = 194 ; pub const KEY_PLAYCD : u32 = 200 ; pub const KEY_PAUSECD : u32 = 201 ; pub const KEY_PROG3 : u32 = 202 ; pub const KEY_PROG4 : u32 = 203 ; pub const KEY_DASHBOARD : u32 = 204 ; pub const KEY_SUSPEND : u32 = 205 ; pub const KEY_CLOSE : u32 = 206 ; pub const KEY_PLAY : u32 = 207 ; pub const KEY_FASTFORWARD : u32 = 208 ; pub const KEY_BASSBOOST : u32 = 209 ; pub const KEY_PRINT : u32 = 210 ; pub const KEY_HP : u32 = 211 ; pub const KEY_CAMERA : u32 = 212 ; pub const KEY_SOUND : u32 = 213 ; pub const KEY_QUESTION : u32 = 214 ; pub const KEY_EMAIL : u32 = 215 ; pub const KEY_CHAT : u32 = 216 ; pub const KEY_SEARCH : u32 = 217 ; pub const KEY_CONNECT : u32 = 218 ; pub const KEY_FINANCE : u32 = 219 ; pub const KEY_SPORT : u32 = 220 ; pub const KEY_SHOP : u32 = 221 ; pub const KEY_ALTERASE : u32 = 222 ; pub const KEY_CANCEL : u32 = 223 ; pub const KEY_BRIGHTNESSDOWN : u32 = 224 ; pub const KEY_BRIGHTNESSUP : u32 = 225 ; pub const KEY_MEDIA : u32 = 226 ; pub const KEY_SWITCHVIDEOMODE : u32 = 227 ; pub const KEY_KBDILLUMTOGGLE : u32 = 228 ; pub const KEY_KBDILLUMDOWN : u32 = 229 ; pub const KEY_KBDILLUMUP : u32 = 230 ; pub const KEY_SEND : u32 = 231 ; pub const KEY_REPLY : u32 = 232 ; pub const KEY_FORWARDMAIL : u32 = 233 ; pub const KEY_SAVE : u32 = 234 ; pub const KEY_DOCUMENTS : u32 = 235 ; pub const KEY_BATTERY : u32 = 236 ; pub const KEY_BLUETOOTH : u32 = 237 ; pub const KEY_WLAN : u32 = 238 ; pub const KEY_UWB : u32 = 239 ; pub const KEY_UNKNOWN : u32 = 240 ; pub const KEY_VIDEO_NEXT : u32 = 241 ; pub const KEY_VIDEO_PREV : u32 = 242 ; pub const KEY_BRIGHTNESS_CYCLE : u32 = 243 ; pub const KEY_BRIGHTNESS_AUTO : u32 = 244 ; pub const KEY_BRIGHTNESS_ZERO : u32 = 244 ; pub const KEY_DISPLAY_OFF : u32 = 245 ; pub const KEY_WWAN : u32 = 246 ; pub const KEY_WIMAX : u32 = 246 ; pub const KEY_RFKILL : u32 = 247 ; pub const KEY_MICMUTE : u32 = 248 ; pub const BTN_MISC : u32 = 256 ; pub const BTN_0 : u32 = 256 ; pub const BTN_1 : u32 = 257 ; pub const BTN_2 : u32 = 258 ; pub const BTN_3 : u32 = 259 ; pub const BTN_4 : u32 = 260 ; pub const BTN_5 : u32 = 261 ; pub const BTN_6 : u32 = 262 ; pub const BTN_7 : u32 = 263 ; pub const BTN_8 : u32 = 264 ; pub const BTN_9 : u32 = 265 ; pub const BTN_MOUSE : u32 = 272 ; pub const BTN_LEFT : u32 = 272 ; pub const BTN_RIGHT : u32 = 273 ; pub const BTN_MIDDLE : u32 = 274 ; pub const BTN_SIDE : u32 = 275 ; pub const BTN_EXTRA : u32 = 276 ; pub const BTN_FORWARD : u32 = 277 ; pub const BTN_BACK : u32 = 278 ; pub const BTN_TASK : u32 = 279 ; pub const BTN_JOYSTICK : u32 = 288 ; pub const BTN_TRIGGER : u32 = 288 ; pub const BTN_THUMB : u32 = 289 ; pub const BTN_THUMB2 : u32 = 290 ; pub const BTN_TOP : u32 = 291 ; pub const BTN_TOP2 : u32 = 292 ; pub const BTN_PINKIE : u32 = 293 ; pub const BTN_BASE : u32 = 294 ; pub const BTN_BASE2 : u32 = 295 ; pub const BTN_BASE3 : u32 = 296 ; pub const BTN_BASE4 : u32 = 297 ; pub const BTN_BASE5 : u32 = 298 ; pub const BTN_BASE6 : u32 = 299 ; pub const BTN_DEAD : u32 = 303 ; pub const BTN_GAMEPAD : u32 = 304 ; pub const BTN_SOUTH : u32 = 304 ; pub const BTN_A : u32 = 304 ; pub const BTN_EAST : u32 = 305 ; pub const BTN_B : u32 = 305 ; pub const BTN_C : u32 = 306 ; pub const BTN_NORTH : u32 = 307 ; pub const BTN_X : u32 = 307 ; pub const BTN_WEST : u32 = 308 ; pub const BTN_Y : u32 = 308 ; pub const BTN_Z : u32 = 309 ; pub const BTN_TL : u32 = 310 ; pub const BTN_TR : u32 = 311 ; pub const BTN_TL2 : u32 = 312 ; pub const BTN_TR2 : u32 = 313 ; pub const BTN_SELECT : u32 = 314 ; pub const BTN_START : u32 = 315 ; pub const BTN_MODE : u32 = 316 ; pub const BTN_THUMBL : u32 = 317 ; pub const BTN_THUMBR : u32 = 318 ; pub const BTN_DIGI : u32 = 320 ; pub const BTN_TOOL_PEN : u32 = 320 ; pub const BTN_TOOL_RUBBER : u32 = 321 ; pub const BTN_TOOL_BRUSH : u32 = 322 ; pub const BTN_TOOL_PENCIL : u32 = 323 ; pub const BTN_TOOL_AIRBRUSH : u32 = 324 ; pub const BTN_TOOL_FINGER : u32 = 325 ; pub const BTN_TOOL_MOUSE : u32 = 326 ; pub const BTN_TOOL_LENS : u32 = 327 ; pub const BTN_TOOL_QUINTTAP : u32 = 328 ; pub const BTN_STYLUS3 : u32 = 329 ; pub const BTN_TOUCH : u32 = 330 ; pub const BTN_STYLUS : u32 = 331 ; pub const BTN_STYLUS2 : u32 = 332 ; pub const BTN_TOOL_DOUBLETAP : u32 = 333 ; pub const BTN_TOOL_TRIPLETAP : u32 = 334 ; pub const BTN_TOOL_QUADTAP : u32 = 335 ; pub const BTN_WHEEL : u32 = 336 ; pub const BTN_GEAR_DOWN : u32 = 336 ; pub const BTN_GEAR_UP : u32 = 337 ; pub const KEY_OK : u32 = 352 ; pub const KEY_SELECT : u32 = 353 ; pub const KEY_GOTO : u32 = 354 ; pub const KEY_CLEAR : u32 = 355 ; pub const KEY_POWER2 : u32 = 356 ; pub const KEY_OPTION : u32 = 357 ; pub const KEY_INFO : u32 = 358 ; pub const KEY_TIME : u32 = 359 ; pub const KEY_VENDOR : u32 = 360 ; pub const KEY_ARCHIVE : u32 = 361 ; pub const KEY_PROGRAM : u32 = 362 ; pub const KEY_CHANNEL : u32 = 363 ; pub const KEY_FAVORITES : u32 = 364 ; pub const KEY_EPG : u32 = 365 ; pub const KEY_PVR : u32 = 366 ; pub const KEY_MHP : u32 = 367 ; pub const KEY_LANGUAGE : u32 = 368 ; pub const KEY_TITLE : u32 = 369 ; pub const KEY_SUBTITLE : u32 = 370 ; pub const KEY_ANGLE : u32 = 371 ; pub const KEY_ZOOM : u32 = 372 ; pub const KEY_MODE : u32 = 373 ; pub const KEY_KEYBOARD : u32 = 374 ; pub const KEY_SCREEN : u32 = 375 ; pub const KEY_PC : u32 = 376 ; pub const KEY_TV : u32 = 377 ; pub const KEY_TV2 : u32 = 378 ; pub const KEY_VCR : u32 = 379 ; pub const KEY_VCR2 : u32 = 380 ; pub const KEY_SAT : u32 = 381 ; pub const KEY_SAT2 : u32 = 382 ; pub const KEY_CD : u32 = 383 ; pub const KEY_TAPE : u32 = 384 ; pub const KEY_RADIO : u32 = 385 ; pub const KEY_TUNER : u32 = 386 ; pub const KEY_PLAYER : u32 = 387 ; pub const KEY_TEXT : u32 = 388 ; pub const KEY_DVD : u32 = 389 ; pub const KEY_AUX : u32 = 390 ; pub const KEY_MP3 : u32 = 391 ; pub const KEY_AUDIO : u32 = 392 ; pub const KEY_VIDEO : u32 = 393 ; pub const KEY_DIRECTORY : u32 = 394 ; pub const KEY_LIST : u32 = 395 ; pub const KEY_MEMO : u32 = 396 ; pub const KEY_CALENDAR : u32 = 397 ; pub const KEY_RED : u32 = 398 ; pub const KEY_GREEN : u32 = 399 ; pub const KEY_YELLOW : u32 = 400 ; pub const KEY_BLUE : u32 = 401 ; pub const KEY_CHANNELUP : u32 = 402 ; pub const KEY_CHANNELDOWN : u32 = 403 ; pub const KEY_FIRST : u32 = 404 ; pub const KEY_LAST : u32 = 405 ; pub const KEY_AB : u32 = 406 ; pub const KEY_NEXT : u32 = 407 ; pub const KEY_RESTART : u32 = 408 ; pub const KEY_SLOW : u32 = 409 ; pub const KEY_SHUFFLE : u32 = 410 ; pub const KEY_BREAK : u32 = 411 ; pub const KEY_PREVIOUS : u32 = 412 ; pub const KEY_DIGITS : u32 = 413 ; pub const KEY_TEEN : u32 = 414 ; pub const KEY_TWEN : u32 = 415 ; pub const KEY_VIDEOPHONE : u32 = 416 ; pub const KEY_GAMES : u32 = 417 ; pub const KEY_ZOOMIN : u32 = 418 ; pub const KEY_ZOOMOUT : u32 = 419 ; pub const KEY_ZOOMRESET : u32 = 420 ; pub const KEY_WORDPROCESSOR : u32 = 421 ; pub const KEY_EDITOR : u32 = 422 ; pub const KEY_SPREADSHEET : u32 = 423 ; pub const KEY_GRAPHICSEDITOR : u32 = 424 ; pub const KEY_PRESENTATION : u32 = 425 ; pub const KEY_DATABASE : u32 = 426 ; pub const KEY_NEWS : u32 = 427 ; pub const KEY_VOICEMAIL : u32 = 428 ; pub const KEY_ADDRESSBOOK : u32 = 429 ; pub const KEY_MESSENGER : u32 = 430 ; pub const KEY_DISPLAYTOGGLE : u32 = 431 ; pub const KEY_BRIGHTNESS_TOGGLE : u32 = 431 ; pub const KEY_SPELLCHECK : u32 = 432 ; pub const KEY_LOGOFF : u32 = 433 ; pub const KEY_DOLLAR : u32 = 434 ; pub const KEY_EURO : u32 = 435 ; pub const KEY_FRAMEBACK : u32 = 436 ; pub const KEY_FRAMEFORWARD : u32 = 437 ; pub const KEY_CONTEXT_MENU : u32 = 438 ; pub const KEY_MEDIA_REPEAT : u32 = 439 ; pub const KEY_10CHANNELSUP : u32 = 440 ; pub const KEY_10CHANNELSDOWN : u32 = 441 ; pub const KEY_IMAGES : u32 = 442 ; pub const KEY_DEL_EOL : u32 = 448 ; pub const KEY_DEL_EOS : u32 = 449 ; pub const KEY_INS_LINE : u32 = 450 ; pub const KEY_DEL_LINE : u32 = 451 ; pub const KEY_FN : u32 = 464 ; pub const KEY_FN_ESC : u32 = 465 ; pub const KEY_FN_F1 : u32 = 466 ; pub const KEY_FN_F2 : u32 = 467 ; pub const KEY_FN_F3 : u32 = 468 ; pub const KEY_FN_F4 : u32 = 469 ; pub const KEY_FN_F5 : u32 = 470 ; pub const KEY_FN_F6 : u32 = 471 ; pub const KEY_FN_F7 : u32 = 472 ; pub const KEY_FN_F8 : u32 = 473 ; pub const KEY_FN_F9 : u32 = 474 ; pub const KEY_FN_F10 : u32 = 475 ; pub const KEY_FN_F11 : u32 = 476 ; pub const KEY_FN_F12 : u32 = 477 ; pub const KEY_FN_1 : u32 = 478 ; pub const KEY_FN_2 : u32 = 479 ; pub const KEY_FN_D : u32 = 480 ; pub const KEY_FN_E : u32 = 481 ; pub const KEY_FN_F : u32 = 482 ; pub const KEY_FN_S : u32 = 483 ; pub const KEY_FN_B : u32 = 484 ; pub const KEY_BRL_DOT1 : u32 = 497 ; pub const KEY_BRL_DOT2 : u32 = 498 ; pub const KEY_BRL_DOT3 : u32 = 499 ; pub const KEY_BRL_DOT4 : u32 = 500 ; pub const KEY_BRL_DOT5 : u32 = 501 ; pub const KEY_BRL_DOT6 : u32 = 502 ; pub const KEY_BRL_DOT7 : u32 = 503 ; pub const KEY_BRL_DOT8 : u32 = 504 ; pub const KEY_BRL_DOT9 : u32 = 505 ; pub const KEY_BRL_DOT10 : u32 = 506 ; pub const KEY_NUMERIC_0 : u32 = 512 ; pub const KEY_NUMERIC_1 : u32 = 513 ; pub const KEY_NUMERIC_2 : u32 = 514 ; pub const KEY_NUMERIC_3 : u32 = 515 ; pub const KEY_NUMERIC_4 : u32 = 516 ; pub const KEY_NUMERIC_5 : u32 = 517 ; pub const KEY_NUMERIC_6 : u32 = 518 ; pub const KEY_NUMERIC_7 : u32 = 519 ; pub const KEY_NUMERIC_8 : u32 = 520 ; pub const KEY_NUMERIC_9 : u32 = 521 ; pub const KEY_NUMERIC_STAR : u32 = 522 ; pub const KEY_NUMERIC_POUND : u32 = 523 ; pub const KEY_NUMERIC_A : u32 = 524 ; pub const KEY_NUMERIC_B : u32 = 525 ; pub const KEY_NUMERIC_C : u32 = 526 ; pub const KEY_NUMERIC_D : u32 = 527 ; pub const KEY_CAMERA_FOCUS : u32 = 528 ; pub const KEY_WPS_BUTTON : u32 = 529 ; pub const KEY_TOUCHPAD_TOGGLE : u32 = 530 ; pub const KEY_TOUCHPAD_ON : u32 = 531 ; pub const KEY_TOUCHPAD_OFF : u32 = 532 ; pub const KEY_CAMERA_ZOOMIN : u32 = 533 ; pub const KEY_CAMERA_ZOOMOUT : u32 = 534 ; pub const KEY_CAMERA_UP : u32 = 535 ; pub const KEY_CAMERA_DOWN : u32 = 536 ; pub const KEY_CAMERA_LEFT : u32 = 537 ; pub const KEY_CAMERA_RIGHT : u32 = 538 ; pub const KEY_ATTENDANT_ON : u32 = 539 ; pub const KEY_ATTENDANT_OFF : u32 = 540 ; pub const KEY_ATTENDANT_TOGGLE : u32 = 541 ; pub const KEY_LIGHTS_TOGGLE : u32 = 542 ; pub const BTN_DPAD_UP : u32 = 544 ; pub const BTN_DPAD_DOWN : u32 = 545 ; pub const BTN_DPAD_LEFT : u32 = 546 ; pub const BTN_DPAD_RIGHT : u32 = 547 ; pub const KEY_ALS_TOGGLE : u32 = 560 ; pub const KEY_BUTTONCONFIG : u32 = 576 ; pub const KEY_TASKMANAGER : u32 = 577 ; pub const KEY_JOURNAL : u32 = 578 ; pub const KEY_CONTROLPANEL : u32 = 579 ; pub const KEY_APPSELECT : u32 = 580 ; pub const KEY_SCREENSAVER : u32 = 581 ; pub const KEY_VOICECOMMAND : u32 = 582 ; pub const KEY_ASSISTANT : u32 = 583 ; pub const KEY_BRIGHTNESS_MIN : u32 = 592 ; pub const KEY_BRIGHTNESS_MAX : u32 = 593 ; pub const KEY_KBDINPUTASSIST_PREV : u32 = 608 ; pub const KEY_KBDINPUTASSIST_NEXT : u32 = 609 ; pub const KEY_KBDINPUTASSIST_PREVGROUP : u32 = 610 ; pub const KEY_KBDINPUTASSIST_NEXTGROUP : u32 = 611 ; pub const KEY_KBDINPUTASSIST_ACCEPT : u32 = 612 ; pub const KEY_KBDINPUTASSIST_CANCEL : u32 = 613 ; pub const KEY_RIGHT_UP : u32 = 614 ; pub const KEY_RIGHT_DOWN : u32 = 615 ; pub const KEY_LEFT_UP : u32 = 616 ; pub const KEY_LEFT_DOWN : u32 = 617 ; pub const KEY_ROOT_MENU : u32 = 618 ; pub const KEY_MEDIA_TOP_MENU : u32 = 619 ; pub const KEY_NUMERIC_11 : u32 = 620 ; pub const KEY_NUMERIC_12 : u32 = 621 ; pub const KEY_AUDIO_DESC : u32 = 622 ; pub const KEY_3D_MODE : u32 = 623 ; pub const KEY_NEXT_FAVORITE : u32 = 624 ; pub const KEY_STOP_RECORD : u32 = 625 ; pub const KEY_PAUSE_RECORD : u32 = 626 ; pub const KEY_VOD : u32 = 627 ; pub const KEY_UNMUTE : u32 = 628 ; pub const KEY_FASTREVERSE : u32 = 629 ; pub const KEY_SLOWREVERSE : u32 = 630 ; pub const KEY_DATA : u32 = 631 ; pub const KEY_ONSCREEN_KEYBOARD : u32 = 632 ; pub const BTN_TRIGGER_HAPPY : u32 = 704 ; pub const BTN_TRIGGER_HAPPY1 : u32 = 704 ; pub const BTN_TRIGGER_HAPPY2 : u32 = 705 ; pub const BTN_TRIGGER_HAPPY3 : u32 = 706 ; pub const BTN_TRIGGER_HAPPY4 : u32 = 707 ; pub const BTN_TRIGGER_HAPPY5 : u32 = 708 ; pub const BTN_TRIGGER_HAPPY6 : u32 = 709 ; pub const BTN_TRIGGER_HAPPY7 : u32 = 710 ; pub const BTN_TRIGGER_HAPPY8 : u32 = 711 ; pub const BTN_TRIGGER_HAPPY9 : u32 = 712 ; pub const BTN_TRIGGER_HAPPY10 : u32 = 713 ; pub const BTN_TRIGGER_HAPPY11 : u32 = 714 ; pub const BTN_TRIGGER_HAPPY12 : u32 = 715 ; pub const BTN_TRIGGER_HAPPY13 : u32 = 716 ; pub const BTN_TRIGGER_HAPPY14 : u32 = 717 ; pub const BTN_TRIGGER_HAPPY15 : u32 = 718 ; pub const BTN_TRIGGER_HAPPY16 : u32 = 719 ; pub const BTN_TRIGGER_HAPPY17 : u32 = 720 ; pub const BTN_TRIGGER_HAPPY18 : u32 = 721 ; pub const BTN_TRIGGER_HAPPY19 : u32 = 722 ; pub const BTN_TRIGGER_HAPPY20 : u32 = 723 ; pub const BTN_TRIGGER_HAPPY21 : u32 = 724 ; pub const BTN_TRIGGER_HAPPY22 : u32 = 725 ; pub const BTN_TRIGGER_HAPPY23 : u32 = 726 ; pub const BTN_TRIGGER_HAPPY24 : u32 = 727 ; pub const BTN_TRIGGER_HAPPY25 : u32 = 728 ; pub const BTN_TRIGGER_HAPPY26 : u32 = 729 ; pub const BTN_TRIGGER_HAPPY27 : u32 = 730 ; pub const BTN_TRIGGER_HAPPY28 : u32 = 731 ; pub const BTN_TRIGGER_HAPPY29 : u32 = 732 ; pub const BTN_TRIGGER_HAPPY30 : u32 = 733 ; pub const BTN_TRIGGER_HAPPY31 : u32 = 734 ; pub const BTN_TRIGGER_HAPPY32 : u32 = 735 ; pub const BTN_TRIGGER_HAPPY33 : u32 = 736 ; pub const BTN_TRIGGER_HAPPY34 : u32 = 737 ; pub const BTN_TRIGGER_HAPPY35 : u32 = 738 ; pub const BTN_TRIGGER_HAPPY36 : u32 = 739 ; pub const BTN_TRIGGER_HAPPY37 : u32 = 740 ; pub const BTN_TRIGGER_HAPPY38 : u32 = 741 ; pub const BTN_TRIGGER_HAPPY39 : u32 = 742 ; pub const BTN_TRIGGER_HAPPY40 : u32 = 743 ; pub const KEY_MIN_INTERESTING : u32 = 113 ; pub const KEY_MAX : u32 = 767 ; pub const KEY_CNT : u32 = 768 ; pub const REL_X : u32 = 0 ; pub const REL_Y : u32 = 1 ; pub const REL_Z : u32 = 2 ; pub const REL_RX : u32 = 3 ; pub const REL_RY : u32 = 4 ; pub const REL_RZ : u32 = 5 ; pub const REL_HWHEEL : u32 = 6 ; pub const REL_DIAL : u32 = 7 ; pub const REL_WHEEL : u32 = 8 ; pub const REL_MISC : u32 = 9 ; pub const REL_MAX : u32 = 15 ; pub const REL_CNT : u32 = 16 ; pub const ABS_X : u32 = 0 ; pub const ABS_Y : u32 = 1 ; pub const ABS_Z : u32 = 2 ; pub const ABS_RX : u32 = 3 ; pub const ABS_RY : u32 = 4 ; pub const ABS_RZ : u32 = 5 ; pub const ABS_THROTTLE : u32 = 6 ; pub const ABS_RUDDER : u32 = 7 ; pub const ABS_WHEEL : u32 = 8 ; pub const ABS_GAS : u32 = 9 ; pub const ABS_BRAKE : u32 = 10 ; pub const ABS_HAT0X : u32 = 16 ; pub const ABS_HAT0Y : u32 = 17 ; pub const ABS_HAT1X : u32 = 18 ; pub const ABS_HAT1Y : u32 = 19 ; pub const ABS_HAT2X : u32 = 20 ; pub const ABS_HAT2Y : u32 = 21 ; pub const ABS_HAT3X : u32 = 22 ; pub const ABS_HAT3Y : u32 = 23 ; pub const ABS_PRESSURE : u32 = 24 ; pub const ABS_DISTANCE : u32 = 25 ; pub const ABS_TILT_X : u32 = 26 ; pub const ABS_TILT_Y : u32 = 27 ; pub const ABS_TOOL_WIDTH : u32 = 28 ; pub const ABS_VOLUME : u32 = 32 ; pub const ABS_MISC : u32 = 40 ; pub const ABS_MT_SLOT : u32 = 47 ; pub const ABS_MT_TOUCH_MAJOR : u32 = 48 ; pub const ABS_MT_TOUCH_MINOR : u32 = 49 ; pub const ABS_MT_WIDTH_MAJOR : u32 = 50 ; pub const ABS_MT_WIDTH_MINOR : u32 = 51 ; pub const ABS_MT_ORIENTATION : u32 = 52 ; pub const ABS_MT_POSITION_X : u32 = 53 ; pub const ABS_MT_POSITION_Y : u32 = 54 ; pub const ABS_MT_TOOL_TYPE : u32 = 55 ; pub const ABS_MT_BLOB_ID : u32 = 56 ; pub const ABS_MT_TRACKING_ID : u32 = 57 ; pub const ABS_MT_PRESSURE : u32 = 58 ; pub const ABS_MT_DISTANCE : u32 = 59 ; pub const ABS_MT_TOOL_X : u32 = 60 ; pub const ABS_MT_TOOL_Y : u32 = 61 ; pub const ABS_MAX : u32 = 63 ; pub const ABS_CNT : u32 = 64 ; pub const SW_LID : u32 = 0 ; pub const SW_TABLET_MODE : u32 = 1 ; pub const SW_HEADPHONE_INSERT : u32 = 2 ; pub const SW_RFKILL_ALL : u32 = 3 ; pub const SW_RADIO : u32 = 3 ; pub const SW_MICROPHONE_INSERT : u32 = 4 ; pub const SW_DOCK : u32 = 5 ; pub const SW_LINEOUT_INSERT : u32 = 6 ; pub const SW_JACK_PHYSICAL_INSERT : u32 = 7 ; pub const SW_VIDEOOUT_INSERT : u32 = 8 ; pub const SW_CAMERA_LENS_COVER : u32 = 9 ; pub const SW_KEYPAD_SLIDE : u32 = 10 ; pub const SW_FRONT_PROXIMITY : u32 = 11 ; pub const SW_ROTATE_LOCK : u32 = 12 ; pub const SW_LINEIN_INSERT : u32 = 13 ; pub const SW_MUTE_DEVICE : u32 = 14 ; pub const SW_PEN_INSERTED : u32 = 15 ; pub const SW_MAX : u32 = 15 ; pub const SW_CNT : u32 = 16 ; pub const MSC_SERIAL : u32 = 0 ; pub const MSC_PULSELED : u32 = 1 ; pub const MSC_GESTURE : u32 = 2 ; pub const MSC_RAW : u32 = 3 ; pub const MSC_SCAN : u32 = 4 ; pub const MSC_TIMESTAMP : u32 = 5 ; pub const MSC_MAX : u32 = 7 ; pub const MSC_CNT : u32 = 8 ; pub const LED_NUML : u32 = 0 ; pub const LED_CAPSL : u32 = 1 ; pub const LED_SCROLLL : u32 = 2 ; pub const LED_COMPOSE : u32 = 3 ; pub const LED_KANA : u32 = 4 ; pub const LED_SLEEP : u32 = 5 ; pub const LED_SUSPEND : u32 = 6 ; pub const LED_MUTE : u32 = 7 ; pub const LED_MISC : u32 = 8 ; pub const LED_MAIL : u32 = 9 ; pub const LED_CHARGING : u32 = 10 ; pub const LED_MAX : u32 = 15 ; pub const LED_CNT : u32 = 16 ; pub const REP_DELAY : u32 = 0 ; pub const REP_PERIOD : u32 = 1 ; pub const REP_MAX : u32 = 1 ; pub const REP_CNT : u32 = 2 ; pub const SND_CLICK : u32 = 0 ; pub const SND_BELL : u32 = 1 ; pub const SND_TONE : u32 = 2 ; pub const SND_MAX : u32 = 7 ; pub const SND_CNT : u32 = 8 ; pub const EV_VERSION : u32 = 65537 ; pub const INPUT_KEYMAP_BY_INDEX : u32 = 1 ; pub const ID_BUS : u32 = 0 ; pub const ID_VENDOR : u32 = 1 ; pub const ID_PRODUCT : u32 = 2 ; pub const ID_VERSION : u32 = 3 ; pub const BUS_PCI : u32 = 1 ; pub const BUS_ISAPNP : u32 = 2 ; pub const BUS_USB : u32 = 3 ; pub const BUS_HIL : u32 = 4 ; pub const BUS_BLUETOOTH : u32 = 5 ; pub const BUS_VIRTUAL : u32 = 6 ; pub const BUS_ISA : u32 = 16 ; pub const BUS_I8042 : u32 = 17 ; pub const BUS_XTKBD : u32 = 18 ; pub const BUS_RS232 : u32 = 19 ; pub const BUS_GAMEPORT : u32 = 20 ; pub const BUS_PARPORT : u32 = 21 ; pub const BUS_AMIGA : u32 = 22 ; pub const BUS_ADB : u32 = 23 ; pub const BUS_I2C : u32 = 24 ; pub const BUS_HOST : u32 = 25 ; pub const BUS_GSC : u32 = 26 ; pub const BUS_ATARI : u32 = 27 ; pub const BUS_SPI : u32 = 28 ; pub const BUS_RMI : u32 = 29 ; pub const BUS_CEC : u32 = 30 ; pub const BUS_INTEL_ISHTP : u32 = 31 ; pub const MT_TOOL_FINGER : u32 = 0 ; pub const MT_TOOL_PEN : u32 = 1 ; pub const MT_TOOL_PALM : u32 = 2 ; pub const MT_TOOL_MAX : u32 = 2 ; pub const FF_STATUS_STOPPED : u32 = 0 ; pub const FF_STATUS_PLAYING : u32 = 1 ; pub const FF_STATUS_MAX : u32 = 1 ; pub const FF_RUMBLE : u32 = 80 ; pub const FF_PERIODIC : u32 = 81 ; pub const FF_CONSTANT : u32 = 82 ; pub const FF_SPRING : u32 = 83 ; pub const FF_FRICTION : u32 = 84 ; pub const FF_DAMPER : u32 = 85 ; pub const FF_INERTIA : u32 = 86 ; pub const FF_RAMP : u32 = 87 ; pub const FF_EFFECT_MIN : u32 = 80 ; pub const FF_EFFECT_MAX : u32 = 87 ; pub const FF_SQUARE : u32 = 88 ; pub const FF_TRIANGLE : u32 = 89 ; pub const FF_SINE : u32 = 90 ; pub const FF_SAW_UP : u32 = 91 ; pub const FF_SAW_DOWN : u32 = 92 ; pub const FF_CUSTOM : u32 = 93 ; pub const FF_WAVEFORM_MIN : u32 = 88 ; pub const FF_WAVEFORM_MAX : u32 = 93 ; pub const FF_GAIN : u32 = 96 ; pub const FF_AUTOCENTER : u32 = 97 ; pub const FF_MAX_EFFECTS : u32 = 96 ; pub const FF_MAX : u32 = 127 ; pub const FF_CNT : u32 = 128 ; pub const USB_INTERFACE_CLASS_HID : u32 = 3 ; pub const USB_INTERFACE_SUBCLASS_BOOT : u32 = 1 ; pub const USB_INTERFACE_PROTOCOL_KEYBOARD : u32 = 1 ; pub const USB_INTERFACE_PROTOCOL_MOUSE : u32 = 2 ; pub const HID_REQ_GET_REPORT : u32 = 1 ; pub const HID_REQ_GET_IDLE : u32 = 2 ; pub const HID_REQ_GET_PROTOCOL : u32 = 3 ; pub const HID_REQ_SET_REPORT : u32 = 9 ; pub const HID_REQ_SET_IDLE : u32 = 10 ; pub const HID_REQ_SET_PROTOCOL : u32 = 11 ; pub const HID_MAX_DESCRIPTOR_SIZE : u32 = 4096 ; pub const UHID_DATA_MAX : u32 = 4096 ; pub type __u_char = :: std :: os :: raw :: c_uchar ; pub type __u_short = :: std :: os :: raw :: c_ushort ; pub type __u_int = :: std :: os :: raw :: c_uint ; pub type __u_long = :: std :: os :: raw :: c_ulong ; pub type __int8_t = :: std :: os :: raw :: c_schar ; pub type __uint8_t = :: std :: os :: raw :: c_uchar ; pub type __int16_t = :: std :: os :: raw :: c_short ; pub type __uint16_t = :: std :: os :: raw :: c_ushort ; pub type __int32_t = :: std :: os :: raw :: c_int ; pub type __uint32_t = :: std :: os :: raw :: c_uint ; pub type __int64_t = :: std :: os :: raw :: c_long ; pub type __uint64_t = :: std :: os :: raw :: c_ulong ; pub type __quad_t = :: std :: os :: raw :: c_long ; pub type __u_quad_t = :: std :: os :: raw :: c_ulong ; pub type __intmax_t = :: std :: os :: raw :: c_long ; pub type __uintmax_t = :: std :: os :: raw :: c_ulong ; pub type __dev_t = :: std :: os :: raw :: c_ulong ; pub type __uid_t = :: std :: os :: raw :: c_uint ; pub type __gid_t = :: std :: os :: raw :: c_uint ; pub type __ino_t = :: std :: os :: raw :: c_ulong ; pub type __ino64_t = :: std :: os :: raw :: c_ulong ; pub type __mode_t = :: std :: os :: raw :: c_uint ; pub type __nlink_t = :: std :: os :: raw :: c_ulong ; pub type __off_t = :: std :: os :: raw :: c_long ; pub type __off64_t = :: std :: os :: raw :: c_long ; pub type __pid_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __fsid_t { pub __val : [ :: std :: os :: raw :: c_int ; 2usize ] , } # [ test ] fn bindgen_test_layout___fsid_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __fsid_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __fsid_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __fsid_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __fsid_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __fsid_t > ( ) ) ) . __val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __fsid_t ) , "::" , stringify ! ( __val ) ) ) ; } pub type __clock_t = :: std :: os :: raw :: c_long ; pub type __rlim_t = :: std :: os :: raw :: c_ulong ; pub type __rlim64_t = :: std :: os :: raw :: c_ulong ; pub type __id_t = :: std :: os :: raw :: c_uint ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __useconds_t = :: std :: os :: raw :: c_uint ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type __daddr_t = :: std :: os :: raw :: c_int ; pub type __key_t = :: std :: os :: raw :: c_int ; pub type __clockid_t = :: std :: os :: raw :: c_int ; pub type __timer_t = * mut :: std :: os :: raw :: c_void ; pub type __blksize_t = :: std :: os :: raw :: c_long ; pub type __blkcnt_t = :: std :: os :: raw :: c_long ; pub type __blkcnt64_t = :: std :: os :: raw :: c_long ; pub type __fsblkcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsblkcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt_t = :: std :: os :: raw :: c_ulong ; pub type __fsfilcnt64_t = :: std :: os :: raw :: c_ulong ; pub type __fsword_t = :: std :: os :: raw :: c_long ; pub type __ssize_t = :: std :: os :: raw :: c_long ; pub type __syscall_slong_t = :: std :: os :: raw :: c_long ; pub type __syscall_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __loff_t = __off64_t ; pub type __caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __intptr_t = :: std :: os :: raw :: c_long ; pub type __socklen_t = :: std :: os :: raw :: c_uint ; pub type __sig_atomic_t = :: std :: os :: raw :: c_int ; pub type time_t = __time_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct timeval { pub tv_sec : __time_t , pub tv_usec : __suseconds_t , } # [ test ] fn bindgen_test_layout_timeval ( ) { assert_eq ! ( :: std :: mem :: size_of :: < timeval > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( timeval ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < timeval > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( timeval ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timeval > ( ) ) ) . tv_sec as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( timeval ) , "::" , stringify ! ( tv_sec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timeval > ( ) ) ) . tv_usec as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( timeval ) , "::" , stringify ! ( tv_usec ) ) ) ; } pub type suseconds_t = __suseconds_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __sigset_t { pub __val : [ :: std :: os :: raw :: c_ulong ; 16usize ] , } # [ test ] fn bindgen_test_layout___sigset_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __sigset_t > ( ) , 128usize , concat ! ( "Size of: " , stringify ! ( __sigset_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __sigset_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __sigset_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __sigset_t > ( ) ) ) . __val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __sigset_t ) , "::" , stringify ! ( __val ) ) ) ; } pub type sigset_t = __sigset_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct timespec { pub tv_sec : __time_t , pub tv_nsec : __syscall_slong_t , } # [ test ] fn bindgen_test_layout_timespec ( ) { assert_eq ! ( :: std :: mem :: size_of :: < timespec > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( timespec ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < timespec > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( timespec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timespec > ( ) ) ) . tv_sec as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( timespec ) , "::" , stringify ! ( tv_sec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timespec > ( ) ) ) . tv_nsec as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( timespec ) , "::" , stringify ! ( tv_nsec ) ) ) ; } pub type __fd_mask = :: std :: os :: raw :: c_long ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct fd_set { pub __fds_bits : [ __fd_mask ; 16usize ] , } # [ test ] fn bindgen_test_layout_fd_set ( ) { assert_eq ! ( :: std :: mem :: size_of :: < fd_set > ( ) , 128usize , concat ! ( "Size of: " , stringify ! ( fd_set ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < fd_set > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( fd_set ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < fd_set > ( ) ) ) . __fds_bits as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( fd_set ) , "::" , stringify ! ( __fds_bits ) ) ) ; } pub type fd_mask = __fd_mask ; extern "C" { pub fn select ( __nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * mut timeval ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn pselect ( __nfds : :: std :: os :: raw :: c_int , __readfds : * mut fd_set , __writefds : * mut fd_set , __exceptfds : * mut fd_set , __timeout : * const timespec , __sigmask : * const __sigset_t ) -> :: std :: os :: raw :: c_int ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct timezone { pub tz_minuteswest : :: std :: os :: raw :: c_int , pub tz_dsttime : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_timezone ( ) { assert_eq ! ( :: std :: mem :: size_of :: < timezone > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( timezone ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < timezone > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( timezone ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timezone > ( ) ) ) . tz_minuteswest as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( timezone ) , "::" , stringify ! ( tz_minuteswest ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < timezone > ( ) ) ) . tz_dsttime as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( timezone ) , "::" , stringify ! ( tz_dsttime ) ) ) ; } pub type __timezone_ptr_t = * mut timezone ; extern "C" { pub fn gettimeofday ( __tv : * mut timeval , __tz : __timezone_ptr_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn settimeofday ( __tv : * const timeval , __tz : * const timezone ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn adjtime ( __delta : * const timeval , __olddelta : * mut timeval ) -> :: std :: os :: raw :: c_int ; } pub const __itimer_which_ITIMER_REAL : __itimer_which = 0 ; pub const __itimer_which_ITIMER_VIRTUAL : __itimer_which = 1 ; pub const __itimer_which_ITIMER_PROF : __itimer_which = 2 ; pub type __itimer_which = u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct itimerval { pub it_interval : timeval , pub it_value : timeval , } # [ test ] fn bindgen_test_layout_itimerval ( ) { assert_eq ! ( :: std :: mem :: size_of :: < itimerval > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( itimerval ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < itimerval > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( itimerval ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < itimerval > ( ) ) ) . it_interval as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( itimerval ) , "::" , stringify ! ( it_interval ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < itimerval > ( ) ) ) . it_value as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( itimerval ) , "::" , stringify ! ( it_value ) ) ) ; } pub type __itimer_which_t = :: std :: os :: raw :: c_int ; extern "C" { pub fn getitimer ( __which : __itimer_which_t , __value : * mut itimerval ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn setitimer ( __which : __itimer_which_t , __new : * const itimerval , __old : * mut itimerval ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn utimes ( __file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn lutimes ( __file : * const :: std :: os :: raw :: c_char , __tvp : * const timeval ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn futimes ( __fd : :: std :: os :: raw :: c_int , __tvp : * const timeval ) -> :: std :: os :: raw :: c_int ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct winsize { pub ws_row : :: std :: os :: raw :: c_ushort , pub ws_col : :: std :: os :: raw :: c_ushort , pub ws_xpixel : :: std :: os :: raw :: c_ushort , pub ws_ypixel : :: std :: os :: raw :: c_ushort , } # [ test ] fn bindgen_test_layout_winsize ( ) { assert_eq ! ( :: std :: mem :: size_of :: < winsize > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( winsize ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < winsize > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( winsize ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < winsize > ( ) ) ) . ws_row as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( winsize ) , "::" , stringify ! ( ws_row ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < winsize > ( ) ) ) . ws_col as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( winsize ) , "::" , stringify ! ( ws_col ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < winsize > ( ) ) ) . ws_xpixel as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( winsize ) , "::" , stringify ! ( ws_xpixel ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < winsize > ( ) ) ) . ws_ypixel as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( winsize ) , "::" , stringify ! ( ws_ypixel ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct termio { pub c_iflag : :: std :: os :: raw :: c_ushort , pub c_oflag : :: std :: os :: raw :: c_ushort , pub c_cflag : :: std :: os :: raw :: c_ushort , pub c_lflag : :: std :: os :: raw :: c_ushort , pub c_line : :: std :: os :: raw :: c_uchar , pub c_cc : [ :: std :: os :: raw :: c_uchar ; 8usize ] , } # [ test ] fn bindgen_test_layout_termio ( ) { assert_eq ! ( :: std :: mem :: size_of :: < termio > ( ) , 18usize , concat ! ( "Size of: " , stringify ! ( termio ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < termio > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( termio ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < termio > ( ) ) ) . c_iflag as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( termio ) , "::" , stringify ! ( c_iflag ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < termio > ( ) ) ) . c_oflag as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( termio ) , "::" , stringify ! ( c_oflag ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < termio > ( ) ) ) . c_cflag as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( termio ) , "::" , stringify ! ( c_cflag ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < termio > ( ) ) ) . c_lflag as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( termio ) , "::" , stringify ! ( c_lflag ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < termio > ( ) ) ) . c_line as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( termio ) , "::" , stringify ! ( c_line ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < termio > ( ) ) ) . c_cc as * const _ as usize } , 9usize , concat ! ( "Offset of field: " , stringify ! ( termio ) , "::" , stringify ! ( c_cc ) ) ) ; } extern "C" { pub fn ioctl ( __fd : :: std :: os :: raw :: c_int , __request : :: std :: os :: raw :: c_ulong , ... ) -> :: std :: os :: raw :: c_int ; } pub type u_char = __u_char ; pub type u_short = __u_short ; pub type u_int = __u_int ; pub type u_long = __u_long ; pub type quad_t = __quad_t ; pub type u_quad_t = __u_quad_t ; pub type fsid_t = __fsid_t ; pub type loff_t = __loff_t ; pub type ino_t = __ino_t ; pub type dev_t = __dev_t ; pub type gid_t = __gid_t ; pub type mode_t = __mode_t ; pub type nlink_t = __nlink_t ; pub type uid_t = __uid_t ; pub type off_t = __off_t ; pub type pid_t = __pid_t ; pub type id_t = __id_t ; pub type daddr_t = __daddr_t ; pub type caddr_t = __caddr_t ; pub type key_t = __key_t ; pub type clock_t = __clock_t ; pub type clockid_t = __clockid_t ; pub type timer_t = __timer_t ; pub type ulong = :: std :: os :: raw :: c_ulong ; pub type ushort = :: std :: os :: raw :: c_ushort ; pub type uint = :: std :: os :: raw :: c_uint ; pub type u_int8_t = :: std :: os :: raw :: c_uchar ; pub type u_int16_t = :: std :: os :: raw :: c_ushort ; pub type u_int32_t = :: std :: os :: raw :: c_uint ; pub type u_int64_t = :: std :: os :: raw :: c_ulong ; pub type register_t = :: std :: os :: raw :: c_long ; extern "C" { pub fn gnu_dev_major ( __dev : __dev_t ) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn gnu_dev_minor ( __dev : __dev_t ) -> :: std :: os :: raw :: c_uint ; } extern "C" { pub fn gnu_dev_makedev ( __major : :: std :: os :: raw :: c_uint , __minor : :: std :: os :: raw :: c_uint ) -> __dev_t ; } pub type blksize_t = __blksize_t ; pub type blkcnt_t = __blkcnt_t ; pub type fsblkcnt_t = __fsblkcnt_t ; pub type fsfilcnt_t = __fsfilcnt_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_rwlock_arch_t { pub __readers : :: std :: os :: raw :: c_uint , pub __writers : :: std :: os :: raw :: c_uint , pub __wrphase_futex : :: std :: os :: raw :: c_uint , pub __writers_futex : :: std :: os :: raw :: c_uint , pub __pad3 : :: std :: os :: raw :: c_uint , pub __pad4 : :: std :: os :: raw :: c_uint , pub __cur_writer : :: std :: os :: raw :: c_int , pub __shared : :: std :: os :: raw :: c_int , pub __rwelision : :: std :: os :: raw :: c_schar , pub __pad1 : [ :: std :: os :: raw :: c_uchar ; 7usize ] , pub __pad2 : :: std :: os :: raw :: c_ulong , pub __flags : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_rwlock_arch_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_rwlock_arch_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( __pthread_rwlock_arch_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_rwlock_arch_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_rwlock_arch_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __readers as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __readers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __writers as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __writers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __wrphase_futex as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __wrphase_futex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __writers_futex as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __writers_futex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad3 as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad3 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad4 as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad4 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __cur_writer as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __cur_writer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __shared as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __shared ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __rwelision as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __rwelision ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad1 as * const _ as usize } , 33usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __pad2 as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __pad2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_rwlock_arch_t > ( ) ) ) . __flags as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_rwlock_arch_t ) , "::" , stringify ! ( __flags ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_internal_list { pub __prev : * mut __pthread_internal_list , pub __next : * mut __pthread_internal_list , } # [ test ] fn bindgen_test_layout___pthread_internal_list ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_internal_list > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( __pthread_internal_list ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_internal_list > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_internal_list ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_internal_list > ( ) ) ) . __prev as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_internal_list ) , "::" , stringify ! ( __prev ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_internal_list > ( ) ) ) . __next as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_internal_list ) , "::" , stringify ! ( __next ) ) ) ; } pub type __pthread_list_t = __pthread_internal_list ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_mutex_s { pub __lock : :: std :: os :: raw :: c_int , pub __count : :: std :: os :: raw :: c_uint , pub __owner : :: std :: os :: raw :: c_int , pub __nusers : :: std :: os :: raw :: c_uint , pub __kind : :: std :: os :: raw :: c_int , pub __spins : :: std :: os :: raw :: c_short , pub __elision : :: std :: os :: raw :: c_short , pub __list : __pthread_list_t , } # [ test ] fn bindgen_test_layout___pthread_mutex_s ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_mutex_s > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( __pthread_mutex_s ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_mutex_s > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_mutex_s ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __lock as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __lock ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __count as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __count ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __owner as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __owner ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __nusers as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __nusers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __kind as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __kind ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __spins as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __spins ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __elision as * const _ as usize } , 22usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __elision ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_mutex_s > ( ) ) ) . __list as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_mutex_s ) , "::" , stringify ! ( __list ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct __pthread_cond_s { pub __bindgen_anon_1 : __pthread_cond_s__bindgen_ty_1 , pub __bindgen_anon_2 : __pthread_cond_s__bindgen_ty_2 , pub __g_refs : [ :: std :: os :: raw :: c_uint ; 2usize ] , pub __g_size : [ :: std :: os :: raw :: c_uint ; 2usize ] , pub __g1_orig_size : :: std :: os :: raw :: c_uint , pub __wrefs : :: std :: os :: raw :: c_uint , pub __g_signals : [ :: std :: os :: raw :: c_uint ; 2usize ] , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union __pthread_cond_s__bindgen_ty_1 { pub __wseq : :: std :: os :: raw :: c_ulonglong , pub __wseq32 : __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 , _bindgen_union_align : u64 , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { pub __low : :: std :: os :: raw :: c_uint , pub __high : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) ) ) . __low as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) , "::" , stringify ! ( __low ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 > ( ) ) ) . __high as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 ) , "::" , stringify ! ( __high ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1 > ( ) ) ) . __wseq as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) , "::" , stringify ! ( __wseq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_1 > ( ) ) ) . __wseq32 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_1 ) , "::" , stringify ! ( __wseq32 ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union __pthread_cond_s__bindgen_ty_2 { pub __g1_start : :: std :: os :: raw :: c_ulonglong , pub __g1_start32 : __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 , _bindgen_union_align : u64 , } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { pub __low : :: std :: os :: raw :: c_uint , pub __high : :: std :: os :: raw :: c_uint , } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) ) ) . __low as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) , "::" , stringify ! ( __low ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 > ( ) ) ) . __high as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 ) , "::" , stringify ! ( __high ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s__bindgen_ty_2 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s__bindgen_ty_2 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2 > ( ) ) ) . __g1_start as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) , "::" , stringify ! ( __g1_start ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s__bindgen_ty_2 > ( ) ) ) . __g1_start32 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s__bindgen_ty_2 ) , "::" , stringify ! ( __g1_start32 ) ) ) ; } # [ test ] fn bindgen_test_layout___pthread_cond_s ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __pthread_cond_s > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( __pthread_cond_s ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __pthread_cond_s > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __pthread_cond_s ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_refs as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_refs ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_size as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g1_orig_size as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g1_orig_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __wrefs as * const _ as usize } , 36usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __wrefs ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __pthread_cond_s > ( ) ) ) . __g_signals as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( __pthread_cond_s ) , "::" , stringify ! ( __g_signals ) ) ) ; } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_mutexattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_mutexattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_mutexattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_mutexattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_mutexattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_mutexattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutexattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutexattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutexattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutexattr_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_condattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_condattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_condattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_condattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_condattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_condattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_condattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_condattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_condattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_condattr_t ) , "::" , stringify ! ( __align ) ) ) ; } pub type pthread_key_t = :: std :: os :: raw :: c_uint ; pub type pthread_once_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_attr_t { pub __size : [ :: std :: os :: raw :: c_char ; 56usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 7usize ] , } # [ test ] fn bindgen_test_layout_pthread_attr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_attr_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( pthread_attr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_attr_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_attr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_attr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_attr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_attr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_attr_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_mutex_t { pub __data : __pthread_mutex_s , pub __size : [ :: std :: os :: raw :: c_char ; 40usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 5usize ] , } # [ test ] fn bindgen_test_layout_pthread_mutex_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_mutex_t > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( pthread_mutex_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_mutex_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_mutex_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_mutex_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_mutex_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_cond_t { pub __data : __pthread_cond_s , pub __size : [ :: std :: os :: raw :: c_char ; 48usize ] , pub __align : :: std :: os :: raw :: c_longlong , _bindgen_union_align : [ u64 ; 6usize ] , } # [ test ] fn bindgen_test_layout_pthread_cond_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_cond_t > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( pthread_cond_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_cond_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_cond_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_cond_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_cond_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_rwlock_t { pub __data : __pthread_rwlock_arch_t , pub __size : [ :: std :: os :: raw :: c_char ; 56usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 7usize ] , } # [ test ] fn bindgen_test_layout_pthread_rwlock_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_rwlock_t > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( pthread_rwlock_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_rwlock_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_rwlock_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlock_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlock_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_rwlockattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 8usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : u64 , } # [ test ] fn bindgen_test_layout_pthread_rwlockattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_rwlockattr_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( pthread_rwlockattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_rwlockattr_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_rwlockattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlockattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlockattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_rwlockattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_rwlockattr_t ) , "::" , stringify ! ( __align ) ) ) ; } pub type pthread_spinlock_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_barrier_t { pub __size : [ :: std :: os :: raw :: c_char ; 32usize ] , pub __align : :: std :: os :: raw :: c_long , _bindgen_union_align : [ u64 ; 4usize ] , } # [ test ] fn bindgen_test_layout_pthread_barrier_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_barrier_t > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( pthread_barrier_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_barrier_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( pthread_barrier_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrier_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrier_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrier_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrier_t ) , "::" , stringify ! ( __align ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union pthread_barrierattr_t { pub __size : [ :: std :: os :: raw :: c_char ; 4usize ] , pub __align : :: std :: os :: raw :: c_int , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_pthread_barrierattr_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < pthread_barrierattr_t > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( pthread_barrierattr_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < pthread_barrierattr_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( pthread_barrierattr_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrierattr_t > ( ) ) ) . __size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrierattr_t ) , "::" , stringify ! ( __size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < pthread_barrierattr_t > ( ) ) ) . __align as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( pthread_barrierattr_t ) , "::" , stringify ! ( __align ) ) ) ; } pub type __s8 = :: std :: os :: raw :: c_schar ; pub type __u8 = :: std :: os :: raw :: c_uchar ; pub type __s16 = :: std :: os :: raw :: c_short ; pub type __u16 = :: std :: os :: raw :: c_ushort ; pub type __s32 = :: std :: os :: raw :: c_int ; pub type __u32 = :: std :: os :: raw :: c_uint ; pub type __s64 = :: std :: os :: raw :: c_longlong ; pub type __u64 = :: std :: os :: raw :: c_ulonglong ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __kernel_fd_set { pub fds_bits : [ :: std :: os :: raw :: c_ulong ; 16usize ] , } # [ test ] fn bindgen_test_layout___kernel_fd_set ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __kernel_fd_set > ( ) , 128usize , concat ! ( "Size of: " , stringify ! ( __kernel_fd_set ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __kernel_fd_set > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __kernel_fd_set ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __kernel_fd_set > ( ) ) ) . fds_bits as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __kernel_fd_set ) , "::" , stringify ! ( fds_bits ) ) ) ; } pub type __kernel_sighandler_t = :: std :: option :: Option < unsafe extern "C" fn ( arg1 : :: std :: os :: raw :: c_int ) > ; pub type __kernel_key_t = :: std :: os :: raw :: c_int ; pub type __kernel_mqd_t = :: std :: os :: raw :: c_int ; pub type __kernel_old_uid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_gid_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_old_dev_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_long_t = :: std :: os :: raw :: c_long ; pub type __kernel_ulong_t = :: std :: os :: raw :: c_ulong ; pub type __kernel_ino_t = __kernel_ulong_t ; pub type __kernel_mode_t = :: std :: os :: raw :: c_uint ; pub type __kernel_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_ipc_pid_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid_t = :: std :: os :: raw :: c_uint ; pub type __kernel_suseconds_t = __kernel_long_t ; pub type __kernel_daddr_t = :: std :: os :: raw :: c_int ; pub type __kernel_uid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_gid32_t = :: std :: os :: raw :: c_uint ; pub type __kernel_size_t = __kernel_ulong_t ; pub type __kernel_ssize_t = __kernel_long_t ; pub type __kernel_ptrdiff_t = __kernel_long_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __kernel_fsid_t { pub val : [ :: std :: os :: raw :: c_int ; 2usize ] , } # [ test ] fn bindgen_test_layout___kernel_fsid_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __kernel_fsid_t > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( __kernel_fsid_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __kernel_fsid_t > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( __kernel_fsid_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __kernel_fsid_t > ( ) ) ) . val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __kernel_fsid_t ) , "::" , stringify ! ( val ) ) ) ; } pub type __kernel_off_t = __kernel_long_t ; pub type __kernel_loff_t = :: std :: os :: raw :: c_longlong ; pub type __kernel_time_t = __kernel_long_t ; pub type __kernel_clock_t = __kernel_long_t ; pub type __kernel_timer_t = :: std :: os :: raw :: c_int ; pub type __kernel_clockid_t = :: std :: os :: raw :: c_int ; pub type __kernel_caddr_t = * mut :: std :: os :: raw :: c_char ; pub type __kernel_uid16_t = :: std :: os :: raw :: c_ushort ; pub type __kernel_gid16_t = :: std :: os :: raw :: c_ushort ; pub type __le16 = __u16 ; pub type __be16 = __u16 ; pub type __le32 = __u32 ; pub type __be32 = __u32 ; pub type __le64 = __u64 ; pub type __be64 = __u64 ; pub type __sum16 = __u16 ; pub type __wsum = __u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct input_event { pub time : timeval , pub type_ : __u16 , pub code : __u16 , pub value : __s32 , } # [ test ] fn bindgen_test_layout_input_event ( ) { assert_eq ! ( :: std :: mem :: size_of :: < input_event > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( input_event ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < input_event > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( input_event ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_event > ( ) ) ) . time as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( input_event ) , "::" , stringify ! ( time ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_event > ( ) ) ) . type_ as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( input_event ) , "::" , stringify ! ( type_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_event > ( ) ) ) . code as * const _ as usize } , 18usize , concat ! ( "Offset of field: " , stringify ! ( input_event ) , "::" , stringify ! ( code ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_event > ( ) ) ) . value as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( input_event ) , "::" , stringify ! ( value ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct input_id { pub bustype : __u16 , pub vendor : __u16 , pub product : __u16 , pub version : __u16 , } # [ test ] fn bindgen_test_layout_input_id ( ) { assert_eq ! ( :: std :: mem :: size_of :: < input_id > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( input_id ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < input_id > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( input_id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_id > ( ) ) ) . bustype as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( input_id ) , "::" , stringify ! ( bustype ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_id > ( ) ) ) . vendor as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( input_id ) , "::" , stringify ! ( vendor ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_id > ( ) ) ) . product as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( input_id ) , "::" , stringify ! ( product ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_id > ( ) ) ) . version as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( input_id ) , "::" , stringify ! ( version ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct input_absinfo { pub value : __s32 , pub minimum : __s32 , pub maximum : __s32 , pub fuzz : __s32 , pub flat : __s32 , pub resolution : __s32 , } # [ test ] fn bindgen_test_layout_input_absinfo ( ) { assert_eq ! ( :: std :: mem :: size_of :: < input_absinfo > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( input_absinfo ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < input_absinfo > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( input_absinfo ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_absinfo > ( ) ) ) . value as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( input_absinfo ) , "::" , stringify ! ( value ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_absinfo > ( ) ) ) . minimum as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( input_absinfo ) , "::" , stringify ! ( minimum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_absinfo > ( ) ) ) . maximum as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( input_absinfo ) , "::" , stringify ! ( maximum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_absinfo > ( ) ) ) . fuzz as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( input_absinfo ) , "::" , stringify ! ( fuzz ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_absinfo > ( ) ) ) . flat as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( input_absinfo ) , "::" , stringify ! ( flat ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_absinfo > ( ) ) ) . resolution as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( input_absinfo ) , "::" , stringify ! ( resolution ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct input_keymap_entry { pub flags : __u8 , pub len : __u8 , pub index : __u16 , pub keycode : __u32 , pub scancode : [ __u8 ; 32usize ] , } # [ test ] fn bindgen_test_layout_input_keymap_entry ( ) { assert_eq ! ( :: std :: mem :: size_of :: < input_keymap_entry > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( input_keymap_entry ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < input_keymap_entry > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( input_keymap_entry ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_keymap_entry > ( ) ) ) . flags as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( input_keymap_entry ) , "::" , stringify ! ( flags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_keymap_entry > ( ) ) ) . len as * const _ as usize } , 1usize , concat ! ( "Offset of field: " , stringify ! ( input_keymap_entry ) , "::" , stringify ! ( len ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_keymap_entry > ( ) ) ) . index as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( input_keymap_entry ) , "::" , stringify ! ( index ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_keymap_entry > ( ) ) ) . keycode as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( input_keymap_entry ) , "::" , stringify ! ( keycode ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_keymap_entry > ( ) ) ) . scancode as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( input_keymap_entry ) , "::" , stringify ! ( scancode ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct input_mask { pub type_ : __u32 , pub codes_size : __u32 , pub codes_ptr : __u64 , } # [ test ] fn bindgen_test_layout_input_mask ( ) { assert_eq ! ( :: std :: mem :: size_of :: < input_mask > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( input_mask ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < input_mask > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( input_mask ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_mask > ( ) ) ) . type_ as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( input_mask ) , "::" , stringify ! ( type_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_mask > ( ) ) ) . codes_size as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( input_mask ) , "::" , stringify ! ( codes_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < input_mask > ( ) ) ) . codes_ptr as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( input_mask ) , "::" , stringify ! ( codes_ptr ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ff_replay { pub length : __u16 , pub delay : __u16 , } # [ test ] fn bindgen_test_layout_ff_replay ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_replay > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( ff_replay ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_replay > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( ff_replay ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_replay > ( ) ) ) . length as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_replay ) , "::" , stringify ! ( length ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_replay > ( ) ) ) . delay as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_replay ) , "::" , stringify ! ( delay ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ff_trigger { pub button : __u16 , pub interval : __u16 , } # [ test ] fn bindgen_test_layout_ff_trigger ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_trigger > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( ff_trigger ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_trigger > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( ff_trigger ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_trigger > ( ) ) ) . button as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_trigger ) , "::" , stringify ! ( button ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_trigger > ( ) ) ) . interval as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_trigger ) , "::" , stringify ! ( interval ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ff_envelope { pub attack_length : __u16 , pub attack_level : __u16 , pub fade_length : __u16 , pub fade_level : __u16 , } # [ test ] fn bindgen_test_layout_ff_envelope ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_envelope > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( ff_envelope ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_envelope > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( ff_envelope ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_envelope > ( ) ) ) . attack_length as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_envelope ) , "::" , stringify ! ( attack_length ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_envelope > ( ) ) ) . attack_level as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_envelope ) , "::" , stringify ! ( attack_level ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_envelope > ( ) ) ) . fade_length as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( ff_envelope ) , "::" , stringify ! ( fade_length ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_envelope > ( ) ) ) . fade_level as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( ff_envelope ) , "::" , stringify ! ( fade_level ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ff_constant_effect { pub level : __s16 , pub envelope : ff_envelope , } # [ test ] fn bindgen_test_layout_ff_constant_effect ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_constant_effect > ( ) , 10usize , concat ! ( "Size of: " , stringify ! ( ff_constant_effect ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_constant_effect > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( ff_constant_effect ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_constant_effect > ( ) ) ) . level as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_constant_effect ) , "::" , stringify ! ( level ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_constant_effect > ( ) ) ) . envelope as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_constant_effect ) , "::" , stringify ! ( envelope ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ff_ramp_effect { pub start_level : __s16 , pub end_level : __s16 , pub envelope : ff_envelope , } # [ test ] fn bindgen_test_layout_ff_ramp_effect ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_ramp_effect > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( ff_ramp_effect ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_ramp_effect > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( ff_ramp_effect ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_ramp_effect > ( ) ) ) . start_level as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_ramp_effect ) , "::" , stringify ! ( start_level ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_ramp_effect > ( ) ) ) . end_level as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_ramp_effect ) , "::" , stringify ! ( end_level ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_ramp_effect > ( ) ) ) . envelope as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( ff_ramp_effect ) , "::" , stringify ! ( envelope ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ff_condition_effect { pub right_saturation : __u16 , pub left_saturation : __u16 , pub right_coeff : __s16 , pub left_coeff : __s16 , pub deadband : __u16 , pub center : __s16 , } # [ test ] fn bindgen_test_layout_ff_condition_effect ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_condition_effect > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( ff_condition_effect ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_condition_effect > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( ff_condition_effect ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_condition_effect > ( ) ) ) . right_saturation as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_condition_effect ) , "::" , stringify ! ( right_saturation ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_condition_effect > ( ) ) ) . left_saturation as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_condition_effect ) , "::" , stringify ! ( left_saturation ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_condition_effect > ( ) ) ) . right_coeff as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( ff_condition_effect ) , "::" , stringify ! ( right_coeff ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_condition_effect > ( ) ) ) . left_coeff as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( ff_condition_effect ) , "::" , stringify ! ( left_coeff ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_condition_effect > ( ) ) ) . deadband as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( ff_condition_effect ) , "::" , stringify ! ( deadband ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_condition_effect > ( ) ) ) . center as * const _ as usize } , 10usize , concat ! ( "Offset of field: " , stringify ! ( ff_condition_effect ) , "::" , stringify ! ( center ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ff_periodic_effect { pub waveform : __u16 , pub period : __u16 , pub magnitude : __s16 , pub offset : __s16 , pub phase : __u16 , pub envelope : ff_envelope , pub custom_len : __u32 , pub custom_data : * mut __s16 , } # [ test ] fn bindgen_test_layout_ff_periodic_effect ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_periodic_effect > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( ff_periodic_effect ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_periodic_effect > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( ff_periodic_effect ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_periodic_effect > ( ) ) ) . waveform as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_periodic_effect ) , "::" , stringify ! ( waveform ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_periodic_effect > ( ) ) ) . period as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_periodic_effect ) , "::" , stringify ! ( period ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_periodic_effect > ( ) ) ) . magnitude as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( ff_periodic_effect ) , "::" , stringify ! ( magnitude ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_periodic_effect > ( ) ) ) . offset as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( ff_periodic_effect ) , "::" , stringify ! ( offset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_periodic_effect > ( ) ) ) . phase as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( ff_periodic_effect ) , "::" , stringify ! ( phase ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_periodic_effect > ( ) ) ) . envelope as * const _ as usize } , 10usize , concat ! ( "Offset of field: " , stringify ! ( ff_periodic_effect ) , "::" , stringify ! ( envelope ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_periodic_effect > ( ) ) ) . custom_len as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( ff_periodic_effect ) , "::" , stringify ! ( custom_len ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_periodic_effect > ( ) ) ) . custom_data as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( ff_periodic_effect ) , "::" , stringify ! ( custom_data ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct ff_rumble_effect { pub strong_magnitude : __u16 , pub weak_magnitude : __u16 , } # [ test ] fn bindgen_test_layout_ff_rumble_effect ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_rumble_effect > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( ff_rumble_effect ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_rumble_effect > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( ff_rumble_effect ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_rumble_effect > ( ) ) ) . strong_magnitude as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_rumble_effect ) , "::" , stringify ! ( strong_magnitude ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_rumble_effect > ( ) ) ) . weak_magnitude as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_rumble_effect ) , "::" , stringify ! ( weak_magnitude ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct ff_effect { pub type_ : __u16 , pub id : __s16 , pub direction : __u16 , pub trigger : ff_trigger , pub replay : ff_replay , pub u : ff_effect__bindgen_ty_1 , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union ff_effect__bindgen_ty_1 { pub constant : ff_constant_effect , pub ramp : ff_ramp_effect , pub periodic : ff_periodic_effect , pub condition : [ ff_condition_effect ; 2usize ] , pub rumble : ff_rumble_effect , _bindgen_union_align : [ u64 ; 4usize ] , } # [ test ] fn bindgen_test_layout_ff_effect__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_effect__bindgen_ty_1 > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( ff_effect__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_effect__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( ff_effect__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect__bindgen_ty_1 > ( ) ) ) . constant as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect__bindgen_ty_1 ) , "::" , stringify ! ( constant ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect__bindgen_ty_1 > ( ) ) ) . ramp as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect__bindgen_ty_1 ) , "::" , stringify ! ( ramp ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect__bindgen_ty_1 > ( ) ) ) . periodic as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect__bindgen_ty_1 ) , "::" , stringify ! ( periodic ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect__bindgen_ty_1 > ( ) ) ) . condition as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect__bindgen_ty_1 ) , "::" , stringify ! ( condition ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect__bindgen_ty_1 > ( ) ) ) . rumble as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect__bindgen_ty_1 ) , "::" , stringify ! ( rumble ) ) ) ; } # [ test ] fn bindgen_test_layout_ff_effect ( ) { assert_eq ! ( :: std :: mem :: size_of :: < ff_effect > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( ff_effect ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < ff_effect > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( ff_effect ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect > ( ) ) ) . type_ as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect ) , "::" , stringify ! ( type_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect > ( ) ) ) . id as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect ) , "::" , stringify ! ( id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect > ( ) ) ) . direction as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect ) , "::" , stringify ! ( direction ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect > ( ) ) ) . trigger as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect ) , "::" , stringify ! ( trigger ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect > ( ) ) ) . replay as * const _ as usize } , 10usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect ) , "::" , stringify ! ( replay ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < ff_effect > ( ) ) ) . u as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( ff_effect ) , "::" , stringify ! ( u ) ) ) ; } pub const uhid_event_type___UHID_LEGACY_CREATE : uhid_event_type = 0 ; pub const uhid_event_type_UHID_DESTROY : uhid_event_type = 1 ; pub const uhid_event_type_UHID_START : uhid_event_type = 2 ; pub const uhid_event_type_UHID_STOP : uhid_event_type = 3 ; pub const uhid_event_type_UHID_OPEN : uhid_event_type = 4 ; pub const uhid_event_type_UHID_CLOSE : uhid_event_type = 5 ; pub const uhid_event_type_UHID_OUTPUT : uhid_event_type = 6 ; pub const uhid_event_type___UHID_LEGACY_OUTPUT_EV : uhid_event_type = 7 ; pub const uhid_event_type___UHID_LEGACY_INPUT : uhid_event_type = 8 ; pub const uhid_event_type_UHID_GET_REPORT : uhid_event_type = 9 ; pub const uhid_event_type_UHID_GET_REPORT_REPLY : uhid_event_type = 10 ; pub const uhid_event_type_UHID_CREATE2 : uhid_event_type = 11 ; pub const uhid_event_type_UHID_INPUT2 : uhid_event_type = 12 ; pub const uhid_event_type_UHID_SET_REPORT : uhid_event_type = 13 ; pub const uhid_event_type_UHID_SET_REPORT_REPLY : uhid_event_type = 14 ; pub type uhid_event_type = u32 ; # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_create2_req { pub name : [ __u8 ; 128usize ] , pub phys : [ __u8 ; 64usize ] , pub uniq : [ __u8 ; 64usize ] , pub rd_size : __u16 , pub bus : __u16 , pub vendor : __u32 , pub product : __u32 , pub version : __u32 , pub country : __u32 , pub rd_data : [ __u8 ; 4096usize ] , } # [ test ] fn bindgen_test_layout_uhid_create2_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_create2_req > ( ) , 4372usize , concat ! ( "Size of: " , stringify ! ( uhid_create2_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_create2_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_create2_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . name as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( name ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . phys as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( phys ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . uniq as * const _ as usize } , 192usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( uniq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . rd_size as * const _ as usize } , 256usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( rd_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . bus as * const _ as usize } , 258usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( bus ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . vendor as * const _ as usize } , 260usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( vendor ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . product as * const _ as usize } , 264usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( product ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . version as * const _ as usize } , 268usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( version ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . country as * const _ as usize } , 272usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( country ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create2_req > ( ) ) ) . rd_data as * const _ as usize } , 276usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create2_req ) , "::" , stringify ! ( rd_data ) ) ) ; } pub const uhid_dev_flag_UHID_DEV_NUMBERED_FEATURE_REPORTS : uhid_dev_flag = 1 ; pub const uhid_dev_flag_UHID_DEV_NUMBERED_OUTPUT_REPORTS : uhid_dev_flag = 2 ; pub const uhid_dev_flag_UHID_DEV_NUMBERED_INPUT_REPORTS : uhid_dev_flag = 4 ; pub type uhid_dev_flag = u32 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct uhid_start_req { pub dev_flags : __u64 , } # [ test ] fn bindgen_test_layout_uhid_start_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_start_req > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( uhid_start_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_start_req > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( uhid_start_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_start_req > ( ) ) ) . dev_flags as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_start_req ) , "::" , stringify ! ( dev_flags ) ) ) ; } pub const uhid_report_type_UHID_FEATURE_REPORT : uhid_report_type = 0 ; pub const uhid_report_type_UHID_OUTPUT_REPORT : uhid_report_type = 1 ; pub const uhid_report_type_UHID_INPUT_REPORT : uhid_report_type = 2 ; pub type uhid_report_type = u32 ; # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_input2_req { pub size : __u16 , pub data : [ __u8 ; 4096usize ] , } # [ test ] fn bindgen_test_layout_uhid_input2_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_input2_req > ( ) , 4098usize , concat ! ( "Size of: " , stringify ! ( uhid_input2_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_input2_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_input2_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_input2_req > ( ) ) ) . size as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_input2_req ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_input2_req > ( ) ) ) . data as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( uhid_input2_req ) , "::" , stringify ! ( data ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_output_req { pub data : [ __u8 ; 4096usize ] , pub size : __u16 , pub rtype : __u8 , } # [ test ] fn bindgen_test_layout_uhid_output_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_output_req > ( ) , 4099usize , concat ! ( "Size of: " , stringify ! ( uhid_output_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_output_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_output_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_output_req > ( ) ) ) . data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_output_req ) , "::" , stringify ! ( data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_output_req > ( ) ) ) . size as * const _ as usize } , 4096usize , concat ! ( "Offset of field: " , stringify ! ( uhid_output_req ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_output_req > ( ) ) ) . rtype as * const _ as usize } , 4098usize , concat ! ( "Offset of field: " , stringify ! ( uhid_output_req ) , "::" , stringify ! ( rtype ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct uhid_get_report_req { pub id : __u32 , pub rnum : __u8 , pub rtype : __u8 , } # [ test ] fn bindgen_test_layout_uhid_get_report_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_get_report_req > ( ) , 6usize , concat ! ( "Size of: " , stringify ! ( uhid_get_report_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_get_report_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_get_report_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_get_report_req > ( ) ) ) . id as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_get_report_req ) , "::" , stringify ! ( id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_get_report_req > ( ) ) ) . rnum as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( uhid_get_report_req ) , "::" , stringify ! ( rnum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_get_report_req > ( ) ) ) . rtype as * const _ as usize } , 5usize , concat ! ( "Offset of field: " , stringify ! ( uhid_get_report_req ) , "::" , stringify ! ( rtype ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_get_report_reply_req { pub id : __u32 , pub err : __u16 , pub size : __u16 , pub data : [ __u8 ; 4096usize ] , } # [ test ] fn bindgen_test_layout_uhid_get_report_reply_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_get_report_reply_req > ( ) , 4104usize , concat ! ( "Size of: " , stringify ! ( uhid_get_report_reply_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_get_report_reply_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_get_report_reply_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_get_report_reply_req > ( ) ) ) . id as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_get_report_reply_req ) , "::" , stringify ! ( id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_get_report_reply_req > ( ) ) ) . err as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( uhid_get_report_reply_req ) , "::" , stringify ! ( err ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_get_report_reply_req > ( ) ) ) . size as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( uhid_get_report_reply_req ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_get_report_reply_req > ( ) ) ) . data as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( uhid_get_report_reply_req ) , "::" , stringify ! ( data ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_set_report_req { pub id : __u32 , pub rnum : __u8 , pub rtype : __u8 , pub size : __u16 , pub data : [ __u8 ; 4096usize ] , } # [ test ] fn bindgen_test_layout_uhid_set_report_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_set_report_req > ( ) , 4104usize , concat ! ( "Size of: " , stringify ! ( uhid_set_report_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_set_report_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_set_report_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_set_report_req > ( ) ) ) . id as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_set_report_req ) , "::" , stringify ! ( id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_set_report_req > ( ) ) ) . rnum as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( uhid_set_report_req ) , "::" , stringify ! ( rnum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_set_report_req > ( ) ) ) . rtype as * const _ as usize } , 5usize , concat ! ( "Offset of field: " , stringify ! ( uhid_set_report_req ) , "::" , stringify ! ( rtype ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_set_report_req > ( ) ) ) . size as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( uhid_set_report_req ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_set_report_req > ( ) ) ) . data as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( uhid_set_report_req ) , "::" , stringify ! ( data ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct uhid_set_report_reply_req { pub id : __u32 , pub err : __u16 , } # [ test ] fn bindgen_test_layout_uhid_set_report_reply_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_set_report_reply_req > ( ) , 6usize , concat ! ( "Size of: " , stringify ! ( uhid_set_report_reply_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_set_report_reply_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_set_report_reply_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_set_report_reply_req > ( ) ) ) . id as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_set_report_reply_req ) , "::" , stringify ! ( id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_set_report_reply_req > ( ) ) ) . err as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( uhid_set_report_reply_req ) , "::" , stringify ! ( err ) ) ) ; } pub const uhid_legacy_event_type_UHID_CREATE : uhid_legacy_event_type = 0 ; pub const uhid_legacy_event_type_UHID_OUTPUT_EV : uhid_legacy_event_type = 7 ; pub const uhid_legacy_event_type_UHID_INPUT : uhid_legacy_event_type = 8 ; pub const uhid_legacy_event_type_UHID_FEATURE : uhid_legacy_event_type = 9 ; pub const uhid_legacy_event_type_UHID_FEATURE_ANSWER : uhid_legacy_event_type = 10 ; pub type uhid_legacy_event_type = u32 ; # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_create_req { pub name : [ __u8 ; 128usize ] , pub phys : [ __u8 ; 64usize ] , pub uniq : [ __u8 ; 64usize ] , pub rd_data : * mut __u8 , pub rd_size : __u16 , pub bus : __u16 , pub vendor : __u32 , pub product : __u32 , pub version : __u32 , pub country : __u32 , } # [ test ] fn bindgen_test_layout_uhid_create_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_create_req > ( ) , 284usize , concat ! ( "Size of: " , stringify ! ( uhid_create_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_create_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_create_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . name as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( name ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . phys as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( phys ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . uniq as * const _ as usize } , 192usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( uniq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . rd_data as * const _ as usize } , 256usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( rd_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . rd_size as * const _ as usize } , 264usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( rd_size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . bus as * const _ as usize } , 266usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( bus ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . vendor as * const _ as usize } , 268usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( vendor ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . product as * const _ as usize } , 272usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( product ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . version as * const _ as usize } , 276usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( version ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_create_req > ( ) ) ) . country as * const _ as usize } , 280usize , concat ! ( "Offset of field: " , stringify ! ( uhid_create_req ) , "::" , stringify ! ( country ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_input_req { pub data : [ __u8 ; 4096usize ] , pub size : __u16 , } # [ test ] fn bindgen_test_layout_uhid_input_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_input_req > ( ) , 4098usize , concat ! ( "Size of: " , stringify ! ( uhid_input_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_input_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_input_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_input_req > ( ) ) ) . data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_input_req ) , "::" , stringify ! ( data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_input_req > ( ) ) ) . size as * const _ as usize } , 4096usize , concat ! ( "Offset of field: " , stringify ! ( uhid_input_req ) , "::" , stringify ! ( size ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct uhid_output_ev_req { pub type_ : __u16 , pub code : __u16 , pub value : __s32 , } # [ test ] fn bindgen_test_layout_uhid_output_ev_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_output_ev_req > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( uhid_output_ev_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_output_ev_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_output_ev_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_output_ev_req > ( ) ) ) . type_ as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_output_ev_req ) , "::" , stringify ! ( type_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_output_ev_req > ( ) ) ) . code as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( uhid_output_ev_req ) , "::" , stringify ! ( code ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_output_ev_req > ( ) ) ) . value as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( uhid_output_ev_req ) , "::" , stringify ! ( value ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct uhid_feature_req { pub id : __u32 , pub rnum : __u8 , pub rtype : __u8 , } # [ test ] fn bindgen_test_layout_uhid_feature_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_feature_req > ( ) , 6usize , concat ! ( "Size of: " , stringify ! ( uhid_feature_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_feature_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_feature_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_feature_req > ( ) ) ) . id as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_feature_req ) , "::" , stringify ! ( id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_feature_req > ( ) ) ) . rnum as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( uhid_feature_req ) , "::" , stringify ! ( rnum ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_feature_req > ( ) ) ) . rtype as * const _ as usize } , 5usize , concat ! ( "Offset of field: " , stringify ! ( uhid_feature_req ) , "::" , stringify ! ( rtype ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_feature_answer_req { pub id : __u32 , pub err : __u16 , pub size : __u16 , pub data : [ __u8 ; 4096usize ] , } # [ test ] fn bindgen_test_layout_uhid_feature_answer_req ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_feature_answer_req > ( ) , 4104usize , concat ! ( "Size of: " , stringify ! ( uhid_feature_answer_req ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_feature_answer_req > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_feature_answer_req ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_feature_answer_req > ( ) ) ) . id as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_feature_answer_req ) , "::" , stringify ! ( id ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_feature_answer_req > ( ) ) ) . err as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( uhid_feature_answer_req ) , "::" , stringify ! ( err ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_feature_answer_req > ( ) ) ) . size as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( uhid_feature_answer_req ) , "::" , stringify ! ( size ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_feature_answer_req > ( ) ) ) . data as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( uhid_feature_answer_req ) , "::" , stringify ! ( data ) ) ) ; } # [ repr ( C , packed ) ] # [ derive ( Copy , Clone ) ] pub struct uhid_event { pub type_ : __u32 , pub u : uhid_event__bindgen_ty_1 , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union uhid_event__bindgen_ty_1 { pub create : uhid_create_req , pub input : uhid_input_req , pub output : uhid_output_req , pub output_ev : uhid_output_ev_req , pub feature : uhid_feature_req , pub get_report : uhid_get_report_req , pub feature_answer : uhid_feature_answer_req , pub get_report_reply : uhid_get_report_reply_req , pub create2 : uhid_create2_req , pub input2 : uhid_input2_req , pub set_report : uhid_set_report_req , pub set_report_reply : uhid_set_report_reply_req , pub start : uhid_start_req , _bindgen_union_align : [ u64 ; 547usize ] , } # [ test ] fn bindgen_test_layout_uhid_event__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_event__bindgen_ty_1 > ( ) , 4376usize , concat ! ( "Size of: " , stringify ! ( uhid_event__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_event__bindgen_ty_1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( uhid_event__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . create as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( create ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . input as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( input ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . output as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( output ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . output_ev as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( output_ev ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . feature as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( feature ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . get_report as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( get_report ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . feature_answer as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( feature_answer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . get_report_reply as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( get_report_reply ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . create2 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( create2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . input2 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( input2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . set_report as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( set_report ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . set_report_reply as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( set_report_reply ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event__bindgen_ty_1 > ( ) ) ) . start as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event__bindgen_ty_1 ) , "::" , stringify ! ( start ) ) ) ; } # [ test ] fn bindgen_test_layout_uhid_event ( ) { assert_eq ! ( :: std :: mem :: size_of :: < uhid_event > ( ) , 4380usize , concat ! ( "Size of: " , stringify ! ( uhid_event ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < uhid_event > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( uhid_event ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event > ( ) ) ) . type_ as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event ) , "::" , stringify ! ( type_ ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < uhid_event > ( ) ) ) . u as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( uhid_event ) , "::" , stringify ! ( u ) ) ) ; }