/
githubmirror
/
origin
Обзор
Документация
Войти
/
githubmirror
/
origin
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
vendor/github.com/moby/term/windows/console.go
43 строки
976 B
Filip Křepinský
bump(k8s): go mod vendor
03 окт 2024, 13:45
03 окт 2024, 13:45
34d3c55
Код
Авторство
О чём код?
//go:build windows // +build windows package windowsconsole import ( "os" "golang.org/x/sys/windows" ) // GetHandleInfo returns file descriptor and bool indicating whether the file is a console. func GetHandleInfo(in interface{}) (uintptr, bool) { switch t := in.(type) { case *ansiReader: return t.Fd(), true case *ansiWriter: return t.Fd(), true } var inFd uintptr var isTerminal bool if file, ok := in.(*os.File); ok { inFd = file.Fd() isTerminal = isConsole(inFd) } return inFd, isTerminal } // IsConsole returns true if the given file descriptor is a Windows Console. // The code assumes that GetConsoleMode will return an error for file descriptors that are not a console. // // Deprecated: use [windows.GetConsoleMode] or [golang.org/x/term.IsTerminal]. func IsConsole(fd uintptr) bool { return isConsole(fd) } func isConsole(fd uintptr) bool { var mode uint32 err := windows.GetConsoleMode(windows.Handle(fd), &mode) return err == nil }