File: get.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 (26 lines) | stat: -rw-r--r-- 823 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
26
# Partial-Element Getter

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

1. the `PartialElement` is loaded (and masked to discard unused bits),
1. the loaded value is then shifted to abut the LSedge of the stack local,
1. and then `resize`d into a `U` value.

## Type Parameters

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

## Parameters

- `elem`: A `PartialElement` containing a value segment.
- `shamt`: The distance by which to right-shift the value loaded from `elem` so
  that it abuts the LSedge.

## Returns

The segment of an integer stored in `elem`.

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