File: set.md

package info (click to toggle)
rust-coreutils 0.7.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 505,620 kB
  • sloc: ansic: 103,594; asm: 28,570; sh: 8,910; python: 5,581; makefile: 472; cpp: 97; javascript: 72
file content (25 lines) | stat: -rw-r--r-- 883 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Partial-Element Setter

This function inserts a portion of an integer value into a [`PartialElement`].
The `BitField` implementations call it as they disassemble a complete integer.
It performs the following steps:

1. the value is `resize`d into a `T::Mem`,
1. shifted up from LSedge as needed to fit in the governed region of the partial
   element,
1. and then stored (after masking away excess bits) through the `PartialElement`
   into memory.

## Type Parameters

- `O` and `T` are the type parameters of the `PartialElement` argument.
- `U` is the source integer type.

## Parameters

- `elem`: A `PartialElement` into which a value segment will be written.
- `value`: A value, whose least-significant bits will be written into `elem`.
- `shamt`: The shift distance from the storage location’s LSedge to its live
  bits.

[`PartialElement`]: crate::domain::PartialElement