go errno_unix 源码

  • 2022-07-15
  • 浏览 (902)

golang errno_unix 代码

文件路径:/src/internal/poll/errno_unix.go

// Copyright 2019 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

//go:build unix

package poll

import "syscall"

// Do the interface allocations only once for common
// Errno values.
var (
	errEAGAIN error = syscall.EAGAIN
	errEINVAL error = syscall.EINVAL
	errENOENT error = syscall.ENOENT
)

// errnoErr returns common boxed Errno values, to prevent
// allocations at runtime.
func errnoErr(e syscall.Errno) error {
	switch e {
	case 0:
		return nil
	case syscall.EAGAIN:
		return errEAGAIN
	case syscall.EINVAL:
		return errEINVAL
	case syscall.ENOENT:
		return errENOENT
	}
	return e
}

相关信息

go 源码目录

相关文章

go copy_file_range_linux 源码

go errno_windows 源码

go error_linux_test 源码

go error_stub_test 源码

go error_test 源码

go export_linux_test 源码

go export_posix_test 源码

go export_test 源码

go export_windows_test 源码

go fcntl_js 源码

0  赞