Trait a2lfile::A2lObject

source ·
pub trait A2lObject<T> {
    // Required methods
    fn get_layout(&self) -> &BlockInfo<T>;
    fn get_layout_mut(&mut self) -> &mut BlockInfo<T>;
    fn reset_location(&mut self);
    fn merge_includes(&mut self);
    fn get_line(&self) -> u32;
}
Expand description

The trait A2lObject is implemented for all a2l objects as well as all objects generated by the a2ml_specification! macro. It gives access to layout and location data which is tracked for each object in an a2l file.

Required Methods§

source

fn get_layout(&self) -> &BlockInfo<T>

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

source

fn get_layout_mut(&mut self) -> &mut BlockInfo<T>

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

Implementors§

source§

impl A2lObject<((u32, bool), (u32, bool))> for A2mlVersion

source§

impl A2lObject<((u32, bool), (u32, bool))> for Asap2Version

source§

impl A2lObject<((u32, bool), (u32, bool))> for MaxRefresh

source§

impl A2lObject<((u32, bool), (u32, bool), (u32, bool))> for FixAxisPar

source§

impl A2lObject<((u32, bool), (u32, bool), (u32, bool))> for FixAxisParDist

source§

impl A2lObject<((u32, bool), (u32, bool), (u32, bool), (u32, bool), (u32, bool), (u32, bool), (u32, bool))> for SiExponents

source§

impl A2lObject<((u32, bool), u32)> for DistOpDim

source§

impl A2lObject<((u32, bool), u32)> for Identification

source§

impl A2lObject<((u32, bool), u32)> for NoAxisPtsDim

source§

impl A2lObject<((u32, bool), u32)> for NoRescaleDim

source§

impl A2lObject<((u32, bool), u32)> for OffsetDim

source§

impl A2lObject<((u32, bool), u32)> for Reserved

source§

impl A2lObject<((u32, bool), u32)> for RipAddrDim

source§

impl A2lObject<((u32, bool), u32)> for ShiftOpDim

source§

impl A2lObject<((u32, bool), u32)> for SrcAddrDim

source§

impl A2lObject<((u32, bool), u32, (u32, bool), u32, u32)> for AxisRescaleDim

source§

impl A2lObject<((u32, bool), u32, u32, u32)> for AxisPtsDim

source§

impl A2lObject<((u32, bool), u32, u32, u32)> for FncValues

source§

impl A2lObject<((u32, bool), ())> for AddrEpk

source§

impl A2lObject<((u32, bool), ())> for AlignmentByte

source§

impl A2lObject<((u32, bool), ())> for AlignmentFloat16Ieee

source§

impl A2lObject<((u32, bool), ())> for AlignmentFloat32Ieee

source§

impl A2lObject<((u32, bool), ())> for AlignmentFloat64Ieee

source§

impl A2lObject<((u32, bool), ())> for AlignmentInt64

source§

impl A2lObject<((u32, bool), ())> for AlignmentLong

source§

impl A2lObject<((u32, bool), ())> for AlignmentWord

source§

impl A2lObject<((u32, bool), ())> for ArraySize

source§

impl A2lObject<((u32, bool), ())> for BitMask

source§

impl A2lObject<((u32, bool), ())> for DataSize

source§

impl A2lObject<((u32, bool), ())> for EcuAddress

source§

impl A2lObject<((u32, bool), ())> for EcuAddressExtension

source§

impl A2lObject<((u32, bool), ())> for EcuCalibrationOffset

source§

impl A2lObject<((u32, bool), ())> for ErrorMask

source§

impl A2lObject<((u32, bool), ())> for FixNoAxisPtsDim

source§

impl A2lObject<((u32, bool), ())> for LeftShift

source§

impl A2lObject<((u32, bool), ())> for NoOfInterfaces

source§

impl A2lObject<((u32, bool), ())> for Number

source§

impl A2lObject<((u32, bool), ())> for RightShift

source§

impl A2lObject<(u32, (u32, bool))> for CalibrationMethod

source§

impl A2lObject<(u32, (u32, bool))> for Overwrite

source§

impl A2lObject<(u32, (u32, bool), (u32, bool), [(u32, bool); 5])> for MemoryLayout

source§

impl A2lObject<(u32, u32)> for CoeffsLinear

source§

impl A2lObject<(u32, u32)> for CombinationStruct

source§

impl A2lObject<(u32, u32)> for ExtendedLimits

source§

impl A2lObject<(u32, u32)> for Function

source§

impl A2lObject<(u32, u32)> for Group

source§

impl A2lObject<(u32, u32)> for Limits

source§

impl A2lObject<(u32, u32)> for Module

source§

impl A2lObject<(u32, u32)> for Project

source§

impl A2lObject<(u32, u32)> for SystemConstant

source§

impl A2lObject<(u32, u32)> for TabEntryStruct

source§

impl A2lObject<(u32, u32)> for UnitConversion

source§

impl A2lObject<(u32, u32)> for ValuePairsStruct

source§

impl A2lObject<(u32, u32, (u32, bool))> for StructureComponent

source§

impl A2lObject<(u32, u32, (u32, bool))> for TypedefBlob

source§

impl A2lObject<(u32, u32, (u32, bool))> for TypedefStructure

source§

impl A2lObject<(u32, u32, (u32, bool), (u32, bool))> for Blob

source§

impl A2lObject<(u32, u32, (u32, bool), (u32, bool))> for Frame

source§

impl A2lObject<(u32, u32, (u32, bool), u32, u32, u32, u32, (u32, bool), u32, u32)> for AxisPts

source§

impl A2lObject<(u32, u32, (u32, bool), Vec<u32>)> for CompuVtabRange

source§

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

source§

impl A2lObject<(u32, u32, u32, (u32, bool))> for Instance

source§

impl A2lObject<(u32, u32, u32, (u32, bool), u32, u32)> for AxisDescr

source§

impl A2lObject<(u32, u32, u32, (u32, bool), u32, u32, u32, u32, u32)> for Characteristic

source§

impl A2lObject<(u32, u32, u32, (u32, bool), Vec<u32>)> for CompuTab

source§

impl A2lObject<(u32, u32, u32, (u32, bool), Vec<u32>)> for CompuVtab

source§

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

source§

impl A2lObject<(u32, u32, u32, u32, (u32, bool), u32, u32)> for Transformer

source§

impl A2lObject<(u32, u32, u32, u32, (u32, bool), u32, u32, u32)> for Measurement

source§

impl A2lObject<(u32, u32, u32, u32, (u32, bool), u32, u32, u32)> for TypedefMeasurement

source§

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

source§

impl A2lObject<(u32, u32, u32, u32, u32, (u32, bool), (u32, bool), [(u32, bool); 5])> for MemorySegment

source§

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

source§

impl A2lObject<(u32, u32, u32, u32, u32, u32, (u32, bool), u32, u32)> for TypedefAxis

source§

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

source§

impl A2lObject<(u32, u32, Vec<u32>)> for VarCriterion

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

impl A2lObject<(u32, Vec<u32>)> for DependentCharacteristic

source§

impl A2lObject<(u32, Vec<u32>)> for VarCharacteristic

source§

impl A2lObject<(u32, Vec<u32>)> for VirtualCharacteristic

source§

impl A2lObject<(Vec<(u32, bool)>, ())> for CalibrationHandle

source§

impl A2lObject<(Vec<(u32, bool)>, ())> for MatrixDim

source§

impl A2lObject<(Vec<(u32, bool)>, ())> for VarAddress

source§

impl A2lObject<(Vec<u32>, ())> for AnnotationText

source§

impl A2lObject<(Vec<u32>, ())> for DefCharacteristic

source§

impl A2lObject<(Vec<u32>, ())> for FixAxisParList

source§

impl A2lObject<(Vec<u32>, ())> for FrameMeasurement

source§

impl A2lObject<(Vec<u32>, ())> for FunctionList

source§

impl A2lObject<(Vec<u32>, ())> for InMeasurement

source§

impl A2lObject<(Vec<u32>, ())> for LocMeasurement

source§

impl A2lObject<(Vec<u32>, ())> for MapList

source§

impl A2lObject<(Vec<u32>, ())> for OutMeasurement

source§

impl A2lObject<(Vec<u32>, ())> for RefCharacteristic

source§

impl A2lObject<(Vec<u32>, ())> for RefGroup

source§

impl A2lObject<(Vec<u32>, ())> for RefMeasurement

source§

impl A2lObject<(Vec<u32>, ())> for SubFunction

source§

impl A2lObject<(Vec<u32>, ())> for SubGroup

source§

impl A2lObject<(Vec<u32>, ())> for TransformerInObjects

source§

impl A2lObject<(Vec<u32>, ())> for TransformerOutObjects

source§

impl A2lObject<(Vec<u32>, ())> for VarForbiddenComb

source§

impl A2lObject<(Vec<u32>, ())> for Virtual

source§

impl A2lObject<()> for A2lFile

source§

impl A2lObject<()> for Annotation

source§

impl A2lObject<()> for BitOperation

source§

impl A2lObject<()> for ConsistentExchange

source§

impl A2lObject<()> for Discrete

source§

impl A2lObject<()> for GuardRails

source§

impl A2lObject<()> for IfData

source§

impl A2lObject<()> for ReadOnly

source§

impl A2lObject<()> for ReadWrite

source§

impl A2lObject<()> for Root

source§

impl A2lObject<()> for SignExtend

source§

impl A2lObject<()> for StaticAddressOffsets

source§

impl A2lObject<()> for StaticRecordLayout

source§

impl A2lObject<()> for VariantCoding