make_sneath_terminal_unix function
_SneathTerminalUnixImpl
make_sneath_terminal_unix({
- required DynamicLibrary stdlib,
- required int IOCTL_TIOCGWINSZ,
Implementation
_SneathTerminalUnixImpl make_sneath_terminal_unix({
required final DynamicLibrary stdlib,
required final int IOCTL_TIOCGWINSZ,
}) {
final _tcgetattr =
stdlib.lookupFunction<_TERMIOS_tcgetattrNative, _TERMIOS_tcgetattrDart>(
'tcgetattr',
);
final _orig_term_ios_pointer = calloc<_TermIOS>();
_tcgetattr(
_UnistdConstants.STDIN_FILENO,
_orig_term_ios_pointer,
);
return _SneathTerminalUnixImpl._(
stdlib: stdlib,
orig_term_ios_pointer: _orig_term_ios_pointer,
ioctl: stdlib.lookupFunction<_IOCTL_Native, _IOCTL_Dart>(
'ioctl',
),
tcgetattr: _tcgetattr,
tcsetattr:
stdlib.lookupFunction<_TERMIOS_tcsetattrNative, _TERMIOS_tcsetattrDart>(
'tcsetattr',
),
IOCTL_TIOCGWINSZ: IOCTL_TIOCGWINSZ,
);
}