MCPcopy Index your code
hub / github.com/RustPython/RustPython / validate_advice

Function validate_advice

crates/stdlib/src/mmap.rs:53–86  ·  view source on GitHub ↗
(vm: &VirtualMachine, advice: i32)

Source from the content-addressed store, hash-verified

51
52 #[cfg(unix)]
53 fn validate_advice(vm: &VirtualMachine, advice: i32) -> PyResult<i32> {
54 match advice {
55 libc::MADV_NORMAL
56 | libc::MADV_RANDOM
57 | libc::MADV_SEQUENTIAL
58 | libc::MADV_WILLNEED
59 | libc::MADV_DONTNEED => Ok(advice),
60 #[cfg(any(
61 target_os = "linux",
62 target_os = "macos",
63 target_os = "ios",
64 target_os = "freebsd"
65 ))]
66 libc::MADV_FREE => Ok(advice),
67 #[cfg(target_os = "linux")]
68 libc::MADV_DONTFORK
69 | libc::MADV_DOFORK
70 | libc::MADV_MERGEABLE
71 | libc::MADV_UNMERGEABLE
72 | libc::MADV_HUGEPAGE
73 | libc::MADV_NOHUGEPAGE
74 | libc::MADV_REMOVE
75 | libc::MADV_DONTDUMP
76 | libc::MADV_DODUMP
77 | libc::MADV_HWPOISON => Ok(advice),
78 #[cfg(target_os = "freebsd")]
79 libc::MADV_NOSYNC
80 | libc::MADV_AUTOSYNC
81 | libc::MADV_NOCORE
82 | libc::MADV_CORE
83 | libc::MADV_PROTECT => Ok(advice),
84 _ => Err(vm.new_value_error("Not a valid Advice value")),
85 }
86 }
87
88 #[repr(C)]
89 #[derive(PartialEq, Eq, Debug)]

Callers 1

madviseMethod · 0.85

Calls 1

ErrClass · 0.50

Tested by

no test coverage detected