1//! Terminal I/O stream operations. 2 3#[cfg(not(target_os = "wasi"))] 4mod cf; 5#[cfg(not(target_os = "wasi"))] 6mod constants; 7#[cfg(not(target_os = "wasi"))] 8mod tc; 9#[cfg(not(windows))] 10mod tty; 11 12#[cfg(not(target_os = "wasi"))] 13pub use cf::{cfgetispeed, cfgetospeed, cfmakeraw, cfsetispeed, cfsetospeed, cfsetspeed}; 14#[cfg(not(any( 15 target_os = "dragonfly", 16 target_os = "freebsd", 17 target_os = "haiku", 18 target_os = "ios", 19 target_os = "macos", 20 target_os = "netbsd", 21 target_os = "openbsd", 22 target_os = "solaris", 23 target_os = "wasi", 24)))] 25pub use constants::B1000000; 26#[cfg(not(any( 27 target_os = "dragonfly", 28 target_os = "freebsd", 29 target_os = "haiku", 30 target_os = "ios", 31 target_os = "macos", 32 target_os = "netbsd", 33 target_os = "openbsd", 34 target_os = "solaris", 35 target_os = "wasi", 36)))] 37pub use constants::B1152000; 38#[cfg(not(any( 39 target_os = "dragonfly", 40 target_os = "freebsd", 41 target_os = "haiku", 42 target_os = "ios", 43 target_os = "macos", 44 target_os = "netbsd", 45 target_os = "openbsd", 46 target_os = "solaris", 47 target_os = "wasi", 48)))] 49pub use constants::B1500000; 50#[cfg(not(any( 51 target_os = "dragonfly", 52 target_os = "freebsd", 53 target_os = "haiku", 54 target_os = "ios", 55 target_os = "macos", 56 target_os = "netbsd", 57 target_os = "openbsd", 58 target_os = "solaris", 59 target_os = "wasi", 60)))] 61pub use constants::B2000000; 62#[cfg(not(any( 63 target_arch = "sparc", 64 target_arch = "sparc64", 65 target_os = "dragonfly", 66 target_os = "freebsd", 67 target_os = "haiku", 68 target_os = "ios", 69 target_os = "macos", 70 target_os = "netbsd", 71 target_os = "openbsd", 72 target_os = "solaris", 73 target_os = "wasi", 74)))] 75pub use constants::B2500000; 76#[cfg(not(any( 77 target_arch = "sparc", 78 target_arch = "sparc64", 79 target_os = "dragonfly", 80 target_os = "freebsd", 81 target_os = "haiku", 82 target_os = "ios", 83 target_os = "macos", 84 target_os = "netbsd", 85 target_os = "openbsd", 86 target_os = "solaris", 87 target_os = "wasi", 88)))] 89pub use constants::B3000000; 90#[cfg(not(any( 91 target_arch = "sparc", 92 target_arch = "sparc64", 93 target_os = "dragonfly", 94 target_os = "freebsd", 95 target_os = "haiku", 96 target_os = "ios", 97 target_os = "macos", 98 target_os = "netbsd", 99 target_os = "openbsd", 100 target_os = "solaris", 101 target_os = "wasi", 102)))] 103pub use constants::B3500000; 104#[cfg(not(any( 105 target_arch = "sparc", 106 target_arch = "sparc64", 107 target_os = "dragonfly", 108 target_os = "freebsd", 109 target_os = "haiku", 110 target_os = "ios", 111 target_os = "macos", 112 target_os = "netbsd", 113 target_os = "openbsd", 114 target_os = "solaris", 115 target_os = "wasi", 116)))] 117pub use constants::B4000000; 118#[cfg(not(any( 119 target_os = "dragonfly", 120 target_os = "haiku", 121 target_os = "ios", 122 target_os = "macos", 123 target_os = "openbsd", 124 target_os = "wasi", 125)))] 126pub use constants::B460800; 127#[cfg(not(any( 128 target_os = "dragonfly", 129 target_os = "freebsd", 130 target_os = "haiku", 131 target_os = "illumos", 132 target_os = "ios", 133 target_os = "macos", 134 target_os = "netbsd", 135 target_os = "openbsd", 136 target_os = "solaris", 137 target_os = "wasi", 138)))] 139pub use constants::B500000; 140#[cfg(not(any( 141 target_os = "dragonfly", 142 target_os = "freebsd", 143 target_os = "haiku", 144 target_os = "illumos", 145 target_os = "ios", 146 target_os = "macos", 147 target_os = "netbsd", 148 target_os = "openbsd", 149 target_os = "solaris", 150 target_os = "wasi", 151)))] 152pub use constants::B576000; 153#[cfg(not(any( 154 target_os = "dragonfly", 155 target_os = "haiku", 156 target_os = "ios", 157 target_os = "macos", 158 target_os = "openbsd", 159 target_os = "wasi", 160)))] 161pub use constants::B921600; 162#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 163pub use constants::BRKINT; 164#[cfg(not(any( 165 target_os = "dragonfly", 166 target_os = "freebsd", 167 target_os = "fuchsia", 168 target_os = "illumos", 169 target_os = "ios", 170 target_os = "macos", 171 target_os = "netbsd", 172 target_os = "openbsd", 173 target_os = "redox", 174 target_os = "solaris", 175 target_os = "wasi", 176)))] 177pub use constants::BS0; 178#[cfg(not(any( 179 all(libc, target_env = "musl"), 180 target_os = "dragonfly", 181 target_os = "emscripten", 182 target_os = "freebsd", 183 target_os = "fuchsia", 184 target_os = "illumos", 185 target_os = "ios", 186 target_os = "macos", 187 target_os = "netbsd", 188 target_os = "openbsd", 189 target_os = "redox", 190 target_os = "solaris", 191 target_os = "wasi", 192)))] 193pub use constants::BS1; 194#[cfg(not(any( 195 target_os = "dragonfly", 196 target_os = "freebsd", 197 target_os = "illumos", 198 target_os = "ios", 199 target_os = "macos", 200 target_os = "netbsd", 201 target_os = "openbsd", 202 target_os = "redox", 203 target_os = "solaris", 204 target_os = "wasi", 205)))] 206pub use constants::BSDLY; 207#[cfg(not(any( 208 target_os = "dragonfly", 209 target_os = "freebsd", 210 target_os = "haiku", 211 target_os = "ios", 212 target_os = "macos", 213 target_os = "netbsd", 214 target_os = "openbsd", 215 target_os = "redox", 216 target_os = "wasi", 217)))] 218pub use constants::CBAUD; 219#[cfg(not(any( 220 target_os = "dragonfly", 221 target_os = "freebsd", 222 target_os = "haiku", 223 target_os = "illumos", 224 target_os = "ios", 225 target_os = "macos", 226 target_os = "netbsd", 227 target_os = "openbsd", 228 target_os = "redox", 229 target_os = "solaris", 230 target_os = "wasi", 231)))] 232pub use constants::CBAUDEX; 233#[cfg(not(any( 234 target_os = "dragonfly", 235 target_os = "emscripten", 236 target_os = "freebsd", 237 target_os = "haiku", 238 target_os = "ios", 239 target_os = "macos", 240 target_os = "netbsd", 241 target_os = "openbsd", 242 target_os = "redox", 243 target_os = "wasi", 244)))] 245pub use constants::CIBAUD; 246#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 247pub use constants::CLOCAL; 248#[cfg(not(any( 249 target_os = "dragonfly", 250 target_os = "emscripten", 251 target_os = "freebsd", 252 target_os = "haiku", 253 target_os = "illumos", 254 target_os = "ios", 255 target_os = "macos", 256 target_os = "netbsd", 257 target_os = "openbsd", 258 target_os = "redox", 259 target_os = "solaris", 260 target_os = "wasi", 261)))] 262pub use constants::CMSPAR; 263#[cfg(not(any( 264 target_os = "dragonfly", 265 target_os = "freebsd", 266 target_os = "fuchsia", 267 target_os = "illumos", 268 target_os = "ios", 269 target_os = "macos", 270 target_os = "netbsd", 271 target_os = "openbsd", 272 target_os = "redox", 273 target_os = "solaris", 274 target_os = "wasi", 275)))] 276pub use constants::CR0; 277#[cfg(not(any( 278 all(libc, target_env = "musl"), 279 target_os = "dragonfly", 280 target_os = "emscripten", 281 target_os = "freebsd", 282 target_os = "fuchsia", 283 target_os = "illumos", 284 target_os = "ios", 285 target_os = "macos", 286 target_os = "netbsd", 287 target_os = "openbsd", 288 target_os = "redox", 289 target_os = "solaris", 290 target_os = "wasi", 291)))] 292pub use constants::CR1; 293#[cfg(not(any( 294 all(libc, target_env = "musl"), 295 target_os = "dragonfly", 296 target_os = "emscripten", 297 target_os = "freebsd", 298 target_os = "fuchsia", 299 target_os = "illumos", 300 target_os = "ios", 301 target_os = "macos", 302 target_os = "netbsd", 303 target_os = "openbsd", 304 target_os = "redox", 305 target_os = "solaris", 306 target_os = "wasi", 307)))] 308pub use constants::CR2; 309#[cfg(not(any( 310 all(libc, target_env = "musl"), 311 target_os = "dragonfly", 312 target_os = "emscripten", 313 target_os = "freebsd", 314 target_os = "fuchsia", 315 target_os = "illumos", 316 target_os = "ios", 317 target_os = "macos", 318 target_os = "netbsd", 319 target_os = "openbsd", 320 target_os = "redox", 321 target_os = "solaris", 322 target_os = "wasi", 323)))] 324pub use constants::CR3; 325#[cfg(not(any( 326 target_os = "dragonfly", 327 target_os = "freebsd", 328 target_os = "illumos", 329 target_os = "ios", 330 target_os = "macos", 331 target_os = "netbsd", 332 target_os = "openbsd", 333 target_os = "redox", 334 target_os = "solaris", 335 target_os = "wasi", 336)))] 337pub use constants::CRDLY; 338#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 339pub use constants::CREAD; 340#[cfg(not(any( 341 target_os = "ios", 342 target_os = "macos", 343 target_os = "redox", 344 target_os = "wasi" 345)))] 346pub use constants::CRTSCTS; 347#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 348pub use constants::CS5; 349#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 350pub use constants::CS6; 351#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 352pub use constants::CS7; 353#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 354pub use constants::CS8; 355#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 356pub use constants::CSIZE; 357#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 358pub use constants::CSTOPB; 359#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 360pub use constants::ECHO; 361#[cfg(not(any( 362 target_os = "ios", 363 target_os = "macos", 364 target_os = "redox", 365 target_os = "wasi" 366)))] 367pub use constants::ECHOCTL; 368#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 369pub use constants::ECHOE; 370#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 371pub use constants::ECHOK; 372#[cfg(not(any( 373 target_os = "ios", 374 target_os = "macos", 375 target_os = "redox", 376 target_os = "wasi" 377)))] 378pub use constants::ECHOKE; 379#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 380pub use constants::ECHONL; 381#[cfg(not(any( 382 target_os = "ios", 383 target_os = "macos", 384 target_os = "redox", 385 target_os = "wasi" 386)))] 387pub use constants::ECHOPRT; 388#[cfg(not(any( 389 target_os = "emscripten", 390 target_os = "haiku", 391 target_os = "illumos", 392 target_os = "ios", 393 target_os = "macos", 394 target_os = "redox", 395 target_os = "solaris", 396 target_os = "wasi", 397)))] 398pub use constants::EXTA; 399#[cfg(not(any( 400 target_os = "emscripten", 401 target_os = "haiku", 402 target_os = "illumos", 403 target_os = "ios", 404 target_os = "macos", 405 target_os = "redox", 406 target_os = "solaris", 407 target_os = "wasi", 408)))] 409pub use constants::EXTB; 410#[cfg(not(any( 411 target_os = "haiku", 412 target_os = "ios", 413 target_os = "macos", 414 target_os = "redox", 415 target_os = "wasi", 416)))] 417pub use constants::EXTPROC; 418#[cfg(not(any( 419 target_os = "dragonfly", 420 target_os = "freebsd", 421 target_os = "fuchsia", 422 target_os = "illumos", 423 target_os = "ios", 424 target_os = "macos", 425 target_os = "netbsd", 426 target_os = "openbsd", 427 target_os = "redox", 428 target_os = "solaris", 429 target_os = "wasi", 430)))] 431pub use constants::FF0; 432#[cfg(not(any( 433 all(libc, target_env = "musl"), 434 target_os = "dragonfly", 435 target_os = "emscripten", 436 target_os = "freebsd", 437 target_os = "fuchsia", 438 target_os = "illumos", 439 target_os = "ios", 440 target_os = "macos", 441 target_os = "netbsd", 442 target_os = "openbsd", 443 target_os = "redox", 444 target_os = "solaris", 445 target_os = "wasi", 446)))] 447pub use constants::FF1; 448#[cfg(not(any( 449 all(libc, target_env = "musl"), 450 target_os = "dragonfly", 451 target_os = "freebsd", 452 target_os = "illumos", 453 target_os = "ios", 454 target_os = "macos", 455 target_os = "netbsd", 456 target_os = "openbsd", 457 target_os = "redox", 458 target_os = "solaris", 459 target_os = "wasi", 460)))] 461pub use constants::FFDLY; 462#[cfg(not(any( 463 target_os = "ios", 464 target_os = "macos", 465 target_os = "redox", 466 target_os = "wasi" 467)))] 468pub use constants::FLUSHO; 469#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 470pub use constants::HUPCL; 471#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 472pub use constants::ICRNL; 473#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 474pub use constants::IEXTEN; 475#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 476pub use constants::IGNBRK; 477#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 478pub use constants::IGNCR; 479#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 480pub use constants::IGNPAR; 481#[cfg(not(any( 482 target_os = "haiku", 483 target_os = "ios", 484 target_os = "macos", 485 target_os = "redox", 486 target_os = "wasi", 487)))] 488pub use constants::IMAXBEL; 489#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 490pub use constants::INLCR; 491#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 492pub use constants::INPCK; 493#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 494pub use constants::ISIG; 495#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 496pub use constants::ISTRIP; 497#[cfg(any( 498 linux_raw, 499 all( 500 libc, 501 any(target_os = "haiku", target_os = "illumos", target_os = "solaris"), 502 ) 503))] 504pub use constants::IUCLC; 505#[cfg(not(any( 506 target_os = "dragonfly", 507 target_os = "emscripten", 508 target_os = "freebsd", 509 target_os = "haiku", 510 target_os = "illumos", 511 target_os = "ios", 512 target_os = "macos", 513 target_os = "netbsd", 514 target_os = "openbsd", 515 target_os = "redox", 516 target_os = "solaris", 517 target_os = "wasi", 518)))] 519pub use constants::IUTF8; 520#[cfg(not(any( 521 target_os = "ios", 522 target_os = "macos", 523 target_os = "redox", 524 target_os = "wasi" 525)))] 526pub use constants::IXANY; 527#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 528pub use constants::IXOFF; 529#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 530pub use constants::IXON; 531#[cfg(not(any( 532 target_os = "dragonfly", 533 target_os = "freebsd", 534 target_os = "fuchsia", 535 target_os = "illumos", 536 target_os = "ios", 537 target_os = "macos", 538 target_os = "netbsd", 539 target_os = "openbsd", 540 target_os = "redox", 541 target_os = "solaris", 542 target_os = "wasi", 543)))] 544pub use constants::NL0; 545#[cfg(not(any( 546 target_os = "dragonfly", 547 target_os = "freebsd", 548 target_os = "fuchsia", 549 target_os = "illumos", 550 target_os = "ios", 551 target_os = "macos", 552 target_os = "netbsd", 553 target_os = "openbsd", 554 target_os = "redox", 555 target_os = "solaris", 556 target_os = "wasi", 557)))] 558pub use constants::NL1; 559#[cfg(not(any( 560 target_os = "dragonfly", 561 target_os = "freebsd", 562 target_os = "illumos", 563 target_os = "ios", 564 target_os = "macos", 565 target_os = "netbsd", 566 target_os = "openbsd", 567 target_os = "redox", 568 target_os = "solaris", 569 target_os = "wasi", 570)))] 571pub use constants::NLDLY; 572#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 573pub use constants::NOFLSH; 574#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 575pub use constants::OCRNL; 576#[cfg(not(any( 577 target_os = "dragonfly", 578 target_os = "freebsd", 579 target_os = "ios", 580 target_os = "macos", 581 target_os = "netbsd", 582 target_os = "openbsd", 583 target_os = "wasi", 584)))] 585pub use constants::OFDEL; 586#[cfg(not(any( 587 target_os = "dragonfly", 588 target_os = "freebsd", 589 target_os = "ios", 590 target_os = "macos", 591 target_os = "netbsd", 592 target_os = "openbsd", 593 target_os = "wasi", 594)))] 595pub use constants::OFILL; 596#[cfg(not(any( 597 target_os = "dragonfly", 598 target_os = "freebsd", 599 target_os = "ios", 600 target_os = "macos", 601 target_os = "netbsd", 602 target_os = "redox", 603 target_os = "wasi", 604)))] 605pub use constants::OLCUC; 606#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 607pub use constants::ONLCR; 608#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 609pub use constants::ONLRET; 610#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 611pub use constants::ONOCR; 612#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 613pub use constants::OPOST; 614#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 615pub use constants::PARENB; 616#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 617pub use constants::PARMRK; 618#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 619pub use constants::PARODD; 620#[cfg(not(any( 621 target_os = "ios", 622 target_os = "macos", 623 target_os = "redox", 624 target_os = "wasi" 625)))] 626pub use constants::PENDIN; 627#[cfg(not(any( 628 target_os = "dragonfly", 629 target_os = "fuchsia", 630 target_os = "illumos", 631 target_os = "ios", 632 target_os = "macos", 633 target_os = "netbsd", 634 target_os = "openbsd", 635 target_os = "redox", 636 target_os = "solaris", 637 target_os = "wasi", 638)))] 639pub use constants::TAB0; 640#[cfg(not(any( 641 all(libc, target_env = "musl"), 642 target_os = "dragonfly", 643 target_os = "emscripten", 644 target_os = "freebsd", 645 target_os = "fuchsia", 646 target_os = "illumos", 647 target_os = "ios", 648 target_os = "macos", 649 target_os = "netbsd", 650 target_os = "openbsd", 651 target_os = "redox", 652 target_os = "solaris", 653 target_os = "wasi", 654)))] 655pub use constants::TAB1; 656#[cfg(not(any( 657 all(libc, target_env = "musl"), 658 target_os = "dragonfly", 659 target_os = "emscripten", 660 target_os = "freebsd", 661 target_os = "fuchsia", 662 target_os = "illumos", 663 target_os = "ios", 664 target_os = "macos", 665 target_os = "netbsd", 666 target_os = "openbsd", 667 target_os = "redox", 668 target_os = "solaris", 669 target_os = "wasi", 670)))] 671pub use constants::TAB2; 672#[cfg(not(any( 673 all(libc, target_env = "musl"), 674 target_os = "dragonfly", 675 target_os = "emscripten", 676 target_os = "fuchsia", 677 target_os = "illumos", 678 target_os = "ios", 679 target_os = "macos", 680 target_os = "netbsd", 681 target_os = "openbsd", 682 target_os = "redox", 683 target_os = "solaris", 684 target_os = "wasi", 685)))] 686pub use constants::TAB3; 687#[cfg(not(any( 688 target_os = "dragonfly", 689 target_os = "ios", 690 target_os = "macos", 691 target_os = "netbsd", 692 target_os = "openbsd", 693 target_os = "illumos", 694 target_os = "redox", 695 target_os = "solaris", 696 target_os = "wasi", 697)))] 698pub use constants::TABDLY; 699#[cfg(not(any(target_os = "ios", target_os = "macos", target_os = "wasi")))] 700pub use constants::TOSTOP; 701#[cfg(not(any( 702 target_os = "dragonfly", 703 target_os = "freebsd", 704 target_os = "haiku", 705 target_os = "illumos", 706 target_os = "ios", 707 target_os = "macos", 708 target_os = "netbsd", 709 target_os = "openbsd", 710 target_os = "solaris", 711 target_os = "wasi", 712)))] 713pub use constants::VSWTC; 714#[cfg(not(any( 715 target_os = "dragonfly", 716 target_os = "freebsd", 717 target_os = "fuchsia", 718 target_os = "illumos", 719 target_os = "ios", 720 target_os = "macos", 721 target_os = "netbsd", 722 target_os = "openbsd", 723 target_os = "redox", 724 target_os = "solaris", 725 target_os = "wasi", 726)))] 727pub use constants::VT0; 728#[cfg(not(any( 729 all(libc, target_env = "musl"), 730 target_os = "dragonfly", 731 target_os = "emscripten", 732 target_os = "freebsd", 733 target_os = "fuchsia", 734 target_os = "illumos", 735 target_os = "ios", 736 target_os = "macos", 737 target_os = "netbsd", 738 target_os = "openbsd", 739 target_os = "redox", 740 target_os = "solaris", 741 target_os = "wasi", 742)))] 743pub use constants::VT1; 744#[cfg(not(any( 745 all(libc, target_env = "musl"), 746 target_os = "dragonfly", 747 target_os = "freebsd", 748 target_os = "illumos", 749 target_os = "ios", 750 target_os = "macos", 751 target_os = "netbsd", 752 target_os = "openbsd", 753 target_os = "redox", 754 target_os = "solaris", 755 target_os = "wasi", 756)))] 757pub use constants::VTDLY; 758#[cfg(any(linux_raw, all(libc, any(target_arch = "s390x", target_os = "haiku"))))] 759pub use constants::XCASE; 760#[cfg(not(any( 761 target_os = "dragonfly", 762 target_os = "freebsd", 763 target_os = "haiku", 764 target_os = "illumos", 765 target_os = "ios", 766 target_os = "macos", 767 target_os = "netbsd", 768 target_os = "openbsd", 769 target_os = "redox", 770 target_os = "solaris", 771 target_os = "wasi", 772)))] 773pub use constants::XTABS; 774#[cfg(not(target_os = "wasi"))] 775pub use constants::{ 776 speed_value, B0, B110, B115200, B1200, B134, B150, B1800, B19200, B200, B230400, B2400, B300, 777 B38400, B4800, B50, B57600, B600, B75, B9600, ICANON, VEOF, VEOL, VEOL2, VERASE, VINTR, VKILL, 778 VMIN, VQUIT, VSTART, VSTOP, VSUSP, VTIME, 779}; 780#[cfg(not(any(target_os = "haiku", target_os = "wasi")))] 781pub use constants::{VDISCARD, VLNEXT, VREPRINT, VWERASE}; 782#[cfg(not(target_os = "wasi"))] 783pub use tc::{ 784 tcdrain, tcflow, tcflush, tcgetattr, tcgetpgrp, tcgetsid, tcgetwinsize, tcsendbreak, tcsetattr, 785 tcsetpgrp, tcsetwinsize, Action, OptionalActions, QueueSelector, Speed, Tcflag, Termios, 786 Winsize, 787}; 788#[cfg(not(windows))] 789pub use tty::isatty; 790#[cfg(not(any(target_os = "fuchsia", target_os = "wasi")))] 791#[cfg(feature = "procfs")] 792pub use tty::ttyname; 793