More TIM support
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "tool_helper"
|
||||
version = "0.9.7"
|
||||
version = "0.9.8"
|
||||
edition = "2021"
|
||||
|
||||
[profile.release]
|
||||
|
||||
@@ -16,8 +16,12 @@ impl BitRange {
|
||||
(1 << self.length) - 1
|
||||
}
|
||||
|
||||
pub const fn as_value(&self, value: usize) -> usize {
|
||||
(value & self.get_mask()) << self.start
|
||||
}
|
||||
|
||||
pub const fn or_value(&self, dst_value: usize, value: usize) -> usize {
|
||||
dst_value | ((value & self.get_mask()) << self.start)
|
||||
dst_value | self.as_value(value)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,9 +34,19 @@ impl Bit {
|
||||
Bit{pos}
|
||||
}
|
||||
|
||||
pub const fn as_value(&self, is_set: bool) -> usize {
|
||||
if is_set {
|
||||
1 << self.pos
|
||||
}
|
||||
|
||||
else {
|
||||
0
|
||||
}
|
||||
}
|
||||
|
||||
pub const fn or_value(&self, dst_value: usize, is_set: bool) -> usize {
|
||||
if is_set {
|
||||
dst_value | (1 << self.pos)
|
||||
dst_value | self.as_value(is_set)
|
||||
}
|
||||
|
||||
else {
|
||||
|
||||
Reference in New Issue
Block a user