Struct a2lfile::RecordLayout

source ·
pub struct RecordLayout {
Show 64 fields pub name: String, pub alignment_byte: Option<AlignmentByte>, pub alignment_float16_ieee: Option<AlignmentFloat16Ieee>, pub alignment_float32_ieee: Option<AlignmentFloat32Ieee>, pub alignment_float64_ieee: Option<AlignmentFloat64Ieee>, pub alignment_int64: Option<AlignmentInt64>, pub alignment_long: Option<AlignmentLong>, pub alignment_word: Option<AlignmentWord>, pub axis_pts_x: Option<AxisPtsDim>, pub axis_pts_y: Option<AxisPtsDim>, pub axis_pts_z: Option<AxisPtsDim>, pub axis_pts_4: Option<AxisPtsDim>, pub axis_pts_5: Option<AxisPtsDim>, pub axis_rescale_x: Option<AxisRescaleDim>, pub axis_rescale_y: Option<AxisRescaleDim>, pub axis_rescale_z: Option<AxisRescaleDim>, pub axis_rescale_4: Option<AxisRescaleDim>, pub axis_rescale_5: Option<AxisRescaleDim>, pub dist_op_x: Option<DistOpDim>, pub dist_op_y: Option<DistOpDim>, pub dist_op_z: Option<DistOpDim>, pub dist_op_4: Option<DistOpDim>, pub dist_op_5: Option<DistOpDim>, pub fix_no_axis_pts_x: Option<FixNoAxisPtsDim>, pub fix_no_axis_pts_y: Option<FixNoAxisPtsDim>, pub fix_no_axis_pts_z: Option<FixNoAxisPtsDim>, pub fix_no_axis_pts_4: Option<FixNoAxisPtsDim>, pub fix_no_axis_pts_5: Option<FixNoAxisPtsDim>, pub fnc_values: Option<FncValues>, pub identification: Option<Identification>, pub no_axis_pts_x: Option<NoAxisPtsDim>, pub no_axis_pts_y: Option<NoAxisPtsDim>, pub no_axis_pts_z: Option<NoAxisPtsDim>, pub no_axis_pts_4: Option<NoAxisPtsDim>, pub no_axis_pts_5: Option<NoAxisPtsDim>, pub no_rescale_x: Option<NoRescaleDim>, pub no_rescale_y: Option<NoRescaleDim>, pub no_rescale_z: Option<NoRescaleDim>, pub no_rescale_4: Option<NoRescaleDim>, pub no_rescale_5: Option<NoRescaleDim>, pub offset_x: Option<OffsetDim>, pub offset_y: Option<OffsetDim>, pub offset_z: Option<OffsetDim>, pub offset_4: Option<OffsetDim>, pub offset_5: Option<OffsetDim>, pub reserved: Vec<Reserved>, pub rip_addr_w: Option<RipAddrDim>, pub rip_addr_x: Option<RipAddrDim>, pub rip_addr_y: Option<RipAddrDim>, pub rip_addr_z: Option<RipAddrDim>, pub rip_addr_4: Option<RipAddrDim>, pub rip_addr_5: Option<RipAddrDim>, pub src_addr_x: Option<SrcAddrDim>, pub src_addr_y: Option<SrcAddrDim>, pub src_addr_z: Option<SrcAddrDim>, pub src_addr_4: Option<SrcAddrDim>, pub src_addr_5: Option<SrcAddrDim>, pub shift_op_x: Option<ShiftOpDim>, pub shift_op_y: Option<ShiftOpDim>, pub shift_op_z: Option<ShiftOpDim>, pub shift_op_4: Option<ShiftOpDim>, pub shift_op_5: Option<ShiftOpDim>, pub static_record_layout: Option<StaticRecordLayout>, pub static_address_offsets: Option<StaticAddressOffsets>, /* private fields */
}
Expand description

specifies the various data structures of an adjustable objects in memory

Fields§

§name: String§alignment_byte: Option<AlignmentByte>§alignment_float16_ieee: Option<AlignmentFloat16Ieee>§alignment_float32_ieee: Option<AlignmentFloat32Ieee>§alignment_float64_ieee: Option<AlignmentFloat64Ieee>§alignment_int64: Option<AlignmentInt64>§alignment_long: Option<AlignmentLong>§alignment_word: Option<AlignmentWord>§axis_pts_x: Option<AxisPtsDim>§axis_pts_y: Option<AxisPtsDim>§axis_pts_z: Option<AxisPtsDim>§axis_pts_4: Option<AxisPtsDim>§axis_pts_5: Option<AxisPtsDim>§axis_rescale_x: Option<AxisRescaleDim>§axis_rescale_y: Option<AxisRescaleDim>§axis_rescale_z: Option<AxisRescaleDim>§axis_rescale_4: Option<AxisRescaleDim>§axis_rescale_5: Option<AxisRescaleDim>§dist_op_x: Option<DistOpDim>§dist_op_y: Option<DistOpDim>§dist_op_z: Option<DistOpDim>§dist_op_4: Option<DistOpDim>§dist_op_5: Option<DistOpDim>§fix_no_axis_pts_x: Option<FixNoAxisPtsDim>§fix_no_axis_pts_y: Option<FixNoAxisPtsDim>§fix_no_axis_pts_z: Option<FixNoAxisPtsDim>§fix_no_axis_pts_4: Option<FixNoAxisPtsDim>§fix_no_axis_pts_5: Option<FixNoAxisPtsDim>§fnc_values: Option<FncValues>§identification: Option<Identification>§no_axis_pts_x: Option<NoAxisPtsDim>§no_axis_pts_y: Option<NoAxisPtsDim>§no_axis_pts_z: Option<NoAxisPtsDim>§no_axis_pts_4: Option<NoAxisPtsDim>§no_axis_pts_5: Option<NoAxisPtsDim>§no_rescale_x: Option<NoRescaleDim>§no_rescale_y: Option<NoRescaleDim>§no_rescale_z: Option<NoRescaleDim>§no_rescale_4: Option<NoRescaleDim>§no_rescale_5: Option<NoRescaleDim>§offset_x: Option<OffsetDim>§offset_y: Option<OffsetDim>§offset_z: Option<OffsetDim>§offset_4: Option<OffsetDim>§offset_5: Option<OffsetDim>§reserved: Vec<Reserved>§rip_addr_w: Option<RipAddrDim>§rip_addr_x: Option<RipAddrDim>§rip_addr_y: Option<RipAddrDim>§rip_addr_z: Option<RipAddrDim>§rip_addr_4: Option<RipAddrDim>§rip_addr_5: Option<RipAddrDim>§src_addr_x: Option<SrcAddrDim>§src_addr_y: Option<SrcAddrDim>§src_addr_z: Option<SrcAddrDim>§src_addr_4: Option<SrcAddrDim>§src_addr_5: Option<SrcAddrDim>§shift_op_x: Option<ShiftOpDim>§shift_op_y: Option<ShiftOpDim>§shift_op_z: Option<ShiftOpDim>§shift_op_4: Option<ShiftOpDim>§shift_op_5: Option<ShiftOpDim>§static_record_layout: Option<StaticRecordLayout>§static_address_offsets: Option<StaticAddressOffsets>

Implementations§

source§

impl RecordLayout

source

pub fn new(name: String) -> Self

Trait Implementations§

source§

impl A2lObject<(u32, ())> for RecordLayout

source§

fn get_layout(&self) -> &BlockInfo<(u32, ())>

get a reference to the BlockInfo that describes the layout of the a2l object
source§

fn get_layout_mut(&mut self) -> &mut BlockInfo<(u32, ())>

get a mutable reference to the BlockInfo that describes the layout of the a2l object
source§

fn reset_location(&mut self)

reset the location information on the a2l object. It will be treated like a new object when writing a file
source§

fn merge_includes(&mut self)

reset the reference to an include file on this objct and its children. This causes the object to be written into the output file instead of referenced through /include “filename”
source§

fn get_line(&self) -> u32

get the source line number from which the current a2l object was loaded. Returns 0 if the object was newly created and not loaded from a file
source§

impl A2lObjectName for RecordLayout

source§

fn get_name(&self) -> &str

get the name of an a2l object. this trait is only implemented for those objects that have names, which is a subset of all objects
source§

impl Clone for RecordLayout

source§

fn clone(&self) -> RecordLayout

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for RecordLayout

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for RecordLayout

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.