pub trait FromObjRef<T: ?Sized>: Sized {
// Required method
fn from_obj_ref(from: &T, data: FontData<'_>) -> Self;
}Expand description
A trait for types that can resolve themselves when provided data to resolve offsets.
It is possible that the generated object is malformed; for instance offsets
may be null where it is not allowed. This can be checked by calling validate
on the generated object.
This is implemented for the majority of parse types. Those that are the base for offset data ignore the provided data and use their own.
Required Methods§
Sourcefn from_obj_ref(from: &T, data: FontData<'_>) -> Self
fn from_obj_ref(from: &T, data: FontData<'_>) -> Self
Convert from to an instance of Self, using the provided data to resolve offsets.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl FromObjRef<u8> for u8
impl FromObjRef<u8> for u8
fn from_obj_ref(from: &u8, _data: FontData<'_>) -> Self
Source§impl FromObjRef<NameString<'_>> for String
impl FromObjRef<NameString<'_>> for String
fn from_obj_ref(obj: &NameString<'_>, _: FontData<'_>) -> Self
Source§impl<'a, T, U, O, const N: usize> FromObjRef<ArrayOfNullableOffsets<'a, U, O>> for Vec<NullableOffsetMarker<T, N>>where
T: FromObjRef<U> + Default,
U: ReadArgs + FontReadWithArgs<'a>,
U::Args: 'static,
O: Scalar + Offset,
impl<'a, T, U, O, const N: usize> FromObjRef<ArrayOfNullableOffsets<'a, U, O>> for Vec<NullableOffsetMarker<T, N>>where
T: FromObjRef<U> + Default,
U: ReadArgs + FontReadWithArgs<'a>,
U::Args: 'static,
O: Scalar + Offset,
fn from_obj_ref( from: &ArrayOfNullableOffsets<'a, U, O>, data: FontData<'_>, ) -> Self
Source§impl<'a, T, U, O, const N: usize> FromObjRef<ArrayOfOffsets<'a, U, O>> for Vec<OffsetMarker<T, N>>where
T: FromObjRef<U> + Default,
U: ReadArgs + FontReadWithArgs<'a>,
U::Args: 'static,
O: Scalar + Offset,
impl<'a, T, U, O, const N: usize> FromObjRef<ArrayOfOffsets<'a, U, O>> for Vec<OffsetMarker<T, N>>where
T: FromObjRef<U> + Default,
U: ReadArgs + FontReadWithArgs<'a>,
U::Args: 'static,
O: Scalar + Offset,
fn from_obj_ref(from: &ArrayOfOffsets<'a, U, O>, data: FontData<'_>) -> Self
Source§impl<T, U> FromObjRef<&[U]> for BTreeSet<T>where
T: FromObjRef<U> + Ord,
impl<T, U> FromObjRef<&[U]> for BTreeSet<T>where
T: FromObjRef<U> + Ord,
fn from_obj_ref(from: &&[U], data: FontData<'_>) -> Self
Source§impl<T, U> FromObjRef<&[U]> for Vec<T>where
T: FromObjRef<U>,
impl<T, U> FromObjRef<&[U]> for Vec<T>where
T: FromObjRef<U>,
fn from_obj_ref(from: &&[U], data: FontData<'_>) -> Self
Source§impl<T: FromObjRef<U>, U> FromObjRef<Option<U>> for Option<T>
impl<T: FromObjRef<U>, U> FromObjRef<Option<U>> for Option<T>
fn from_obj_ref(from: &Option<U>, data: FontData<'_>) -> Self
Implementors§
impl FromObjRef<BaseCoord<'_>> for BaseCoord
impl FromObjRef<CmapSubtable<'_>> for CmapSubtable
impl FromObjRef<ClipBox<'_>> for ClipBox
impl FromObjRef<Paint<'_>> for Paint
impl FromObjRef<CaretValue<'_>> for CaretValue
impl FromObjRef<AnchorTable<'_>> for AnchorTable
impl FromObjRef<ExtensionSubtable<'_>> for write_fonts::tables::gpos::ExtensionSubtable
impl FromObjRef<PairPos<'_>> for PairPos
impl FromObjRef<PositionLookup<'_>> for PositionLookup
impl FromObjRef<SinglePos<'_>> for SinglePos
impl FromObjRef<ExtensionSubtable<'_>> for write_fonts::tables::gsub::ExtensionSubtable
impl FromObjRef<SingleSubst<'_>> for SingleSubst
impl FromObjRef<SubstitutionLookup<'_>> for SubstitutionLookup
impl FromObjRef<Ift<'_>> for Ift
Available on crate feature
ift only.impl FromObjRef<ChainedSequenceContext<'_>> for ChainedSequenceContext
impl FromObjRef<ClassDef<'_>> for ClassDef
impl FromObjRef<Condition<'_>> for Condition
impl FromObjRef<CoverageTable<'_>> for CoverageTable
impl FromObjRef<DeviceOrVariationIndex<'_>> for DeviceOrVariationIndex
impl FromObjRef<FeatureParams<'_>> for FeatureParams
impl FromObjRef<SequenceContext<'_>> for SequenceContext
impl FromObjRef<Metadata<'_>> for Metadata
impl FromObjRef<CustomCharset<'_>> for CustomCharset
impl FromObjRef<FdSelect<'_>> for FdSelect
impl FromObjRef<AxisValue<'_>> for AxisValue
impl FromObjRef<DeltaSetIndexMap<'_>> for DeltaSetIndexMap
impl FromObjRef<AxisValueMap> for AxisValueMap
impl FromObjRef<SegmentMaps<'_>> for SegmentMaps
impl FromObjRef<BaseLangSysRecord> for BaseLangSysRecord
impl FromObjRef<BaseScriptRecord> for BaseScriptRecord
impl FromObjRef<FeatMinMaxRecord> for FeatMinMaxRecord
impl FromObjRef<ConstantMapGroup> for ConstantMapGroup
impl FromObjRef<EncodingRecord> for EncodingRecord
impl FromObjRef<SequentialMapGroup> for SequentialMapGroup
impl FromObjRef<SubHeader> for SubHeader
impl FromObjRef<UnicodeRange> for UnicodeRange
impl FromObjRef<UvsMapping> for UvsMapping
impl FromObjRef<VariationSelector> for VariationSelector
impl FromObjRef<BaseGlyph> for BaseGlyph
impl FromObjRef<BaseGlyphPaint> for BaseGlyphPaint
impl FromObjRef<Clip> for Clip
impl FromObjRef<ColorIndex> for ColorIndex
impl FromObjRef<ColorStop> for ColorStop
impl FromObjRef<Layer> for Layer
impl FromObjRef<VarColorIndex> for VarColorIndex
impl FromObjRef<VarColorStop> for VarColorStop
impl FromObjRef<ColorRecord> for ColorRecord
impl FromObjRef<SignatureRecord> for SignatureRecord
impl FromObjRef<VariationAxisRecord> for VariationAxisRecord
impl FromObjRef<GaspRange> for GaspRange
impl FromObjRef<CompositeGlyph<'_>> for CompositeGlyph
impl FromObjRef<SimpleGlyph<'_>> for SimpleGlyph
impl FromObjRef<BaseRecord<'_>> for BaseRecord
impl FromObjRef<Class1Record<'_>> for Class1Record
impl FromObjRef<Class2Record> for Class2Record
impl FromObjRef<ComponentRecord<'_>> for ComponentRecord
impl FromObjRef<EntryExitRecord> for EntryExitRecord
impl FromObjRef<Mark2Record<'_>> for Mark2Record
impl FromObjRef<MarkRecord> for MarkRecord
impl FromObjRef<PairValueRecord> for PairValueRecord
impl FromObjRef<ValueRecord> for write_fonts::tables::gpos::ValueRecord
impl FromObjRef<LongMetric> for LongMetric
impl FromObjRef<DesignSpaceSegment> for DesignSpaceSegment
Available on crate feature
ift only.impl FromObjRef<EntryMapRecord> for EntryMapRecord
Available on crate feature
ift only.impl FromObjRef<FeatureRecord> for write_fonts::tables::ift::FeatureRecord
Available on crate feature
ift only.impl FromObjRef<ClassRangeRecord> for ClassRangeRecord
impl FromObjRef<FeatureRecord> for write_fonts::tables::layout::FeatureRecord
impl FromObjRef<FeatureTableSubstitutionRecord> for FeatureTableSubstitutionRecord
impl FromObjRef<FeatureVariationRecord> for FeatureVariationRecord
impl FromObjRef<LangSysRecord> for LangSysRecord
impl FromObjRef<RangeRecord> for RangeRecord
impl FromObjRef<ScriptRecord> for ScriptRecord
impl FromObjRef<SequenceLookupRecord> for SequenceLookupRecord
impl FromObjRef<DataMapRecord> for DataMapRecord
impl FromObjRef<ValueRecord> for write_fonts::tables::mvar::ValueRecord
impl FromObjRef<LangTagRecord> for LangTagRecord
impl FromObjRef<NameRecord> for NameRecord
impl FromObjRef<CharsetRange1> for CharsetRange1
impl FromObjRef<CharsetRange2> for CharsetRange2
impl FromObjRef<FdSelectRange3> for FdSelectRange3
impl FromObjRef<FdSelectRange4> for FdSelectRange4
impl FromObjRef<AxisRecord> for AxisRecord
impl FromObjRef<AxisValueRecord> for AxisValueRecord
impl FromObjRef<SparseRegionAxisCoordinates> for SparseRegionAxisCoordinates
impl FromObjRef<RegionAxisCoordinates> for RegionAxisCoordinates
impl FromObjRef<Tuple<'_>> for Tuple
impl FromObjRef<VariationRegion<'_>> for VariationRegion
impl<'a> FromObjRef<Glyph<'a>> for Glyph
impl<'a> FromObjRef<ChainedSequenceContext<'a>> for PositionChainContext
impl<'a> FromObjRef<ChainedSequenceContext<'a>> for SubstitutionChainContext
impl<'a> FromObjRef<SequenceContext<'a>> for PositionSequenceContext
impl<'a> FromObjRef<SequenceContext<'a>> for SubstitutionSequenceContext
impl<'a> FromObjRef<Avar<'a>> for Avar
impl<'a> FromObjRef<Axis<'a>> for Axis
impl<'a> FromObjRef<Base<'a>> for Base
impl<'a> FromObjRef<BaseCoordFormat1<'a>> for BaseCoordFormat1
impl<'a> FromObjRef<BaseCoordFormat2<'a>> for BaseCoordFormat2
impl<'a> FromObjRef<BaseCoordFormat3<'a>> for BaseCoordFormat3
impl<'a> FromObjRef<BaseScript<'a>> for BaseScript
impl<'a> FromObjRef<BaseScriptList<'a>> for BaseScriptList
impl<'a> FromObjRef<BaseTagList<'a>> for BaseTagList
impl<'a> FromObjRef<BaseValues<'a>> for BaseValues
impl<'a> FromObjRef<MinMax<'a>> for MinMax
impl<'a> FromObjRef<Cmap0<'a>> for Cmap0
impl<'a> FromObjRef<Cmap2<'a>> for Cmap2
impl<'a> FromObjRef<Cmap4<'a>> for Cmap4
impl<'a> FromObjRef<Cmap6<'a>> for Cmap6
impl<'a> FromObjRef<Cmap8<'a>> for Cmap8
impl<'a> FromObjRef<Cmap10<'a>> for Cmap10
impl<'a> FromObjRef<Cmap12<'a>> for Cmap12
impl<'a> FromObjRef<Cmap13<'a>> for Cmap13
impl<'a> FromObjRef<Cmap14<'a>> for Cmap14
impl<'a> FromObjRef<Cmap<'a>> for Cmap
impl<'a> FromObjRef<DefaultUvs<'a>> for DefaultUvs
impl<'a> FromObjRef<NonDefaultUvs<'a>> for NonDefaultUvs
impl<'a> FromObjRef<Affine2x3<'a>> for Affine2x3
impl<'a> FromObjRef<BaseGlyphList<'a>> for BaseGlyphList
impl<'a> FromObjRef<ClipBoxFormat1<'a>> for ClipBoxFormat1
impl<'a> FromObjRef<ClipBoxFormat2<'a>> for ClipBoxFormat2
impl<'a> FromObjRef<ClipList<'a>> for ClipList
impl<'a> FromObjRef<ColorLine<'a>> for ColorLine
impl<'a> FromObjRef<Colr<'a>> for Colr
impl<'a> FromObjRef<LayerList<'a>> for LayerList
impl<'a> FromObjRef<PaintColrGlyph<'a>> for PaintColrGlyph
impl<'a> FromObjRef<PaintColrLayers<'a>> for PaintColrLayers
impl<'a> FromObjRef<PaintComposite<'a>> for PaintComposite
impl<'a> FromObjRef<PaintGlyph<'a>> for PaintGlyph
impl<'a> FromObjRef<PaintLinearGradient<'a>> for PaintLinearGradient
impl<'a> FromObjRef<PaintRadialGradient<'a>> for PaintRadialGradient
impl<'a> FromObjRef<PaintRotate<'a>> for PaintRotate
impl<'a> FromObjRef<PaintRotateAroundCenter<'a>> for PaintRotateAroundCenter
impl<'a> FromObjRef<PaintScale<'a>> for PaintScale
impl<'a> FromObjRef<PaintScaleAroundCenter<'a>> for PaintScaleAroundCenter
impl<'a> FromObjRef<PaintScaleUniform<'a>> for PaintScaleUniform
impl<'a> FromObjRef<PaintScaleUniformAroundCenter<'a>> for PaintScaleUniformAroundCenter
impl<'a> FromObjRef<PaintSkew<'a>> for PaintSkew
impl<'a> FromObjRef<PaintSkewAroundCenter<'a>> for PaintSkewAroundCenter
impl<'a> FromObjRef<PaintSolid<'a>> for PaintSolid
impl<'a> FromObjRef<PaintSweepGradient<'a>> for PaintSweepGradient
impl<'a> FromObjRef<PaintTransform<'a>> for PaintTransform
impl<'a> FromObjRef<PaintTranslate<'a>> for PaintTranslate
impl<'a> FromObjRef<PaintVarLinearGradient<'a>> for PaintVarLinearGradient
impl<'a> FromObjRef<PaintVarRadialGradient<'a>> for PaintVarRadialGradient
impl<'a> FromObjRef<PaintVarRotate<'a>> for PaintVarRotate
impl<'a> FromObjRef<PaintVarRotateAroundCenter<'a>> for PaintVarRotateAroundCenter
impl<'a> FromObjRef<PaintVarScale<'a>> for PaintVarScale
impl<'a> FromObjRef<PaintVarScaleAroundCenter<'a>> for PaintVarScaleAroundCenter
impl<'a> FromObjRef<PaintVarScaleUniform<'a>> for PaintVarScaleUniform
impl<'a> FromObjRef<PaintVarScaleUniformAroundCenter<'a>> for PaintVarScaleUniformAroundCenter
impl<'a> FromObjRef<PaintVarSkew<'a>> for PaintVarSkew
impl<'a> FromObjRef<PaintVarSkewAroundCenter<'a>> for PaintVarSkewAroundCenter
impl<'a> FromObjRef<PaintVarSolid<'a>> for PaintVarSolid
impl<'a> FromObjRef<PaintVarSweepGradient<'a>> for PaintVarSweepGradient
impl<'a> FromObjRef<PaintVarTransform<'a>> for PaintVarTransform
impl<'a> FromObjRef<PaintVarTranslate<'a>> for PaintVarTranslate
impl<'a> FromObjRef<VarAffine2x3<'a>> for VarAffine2x3
impl<'a> FromObjRef<VarColorLine<'a>> for VarColorLine
impl<'a> FromObjRef<Cpal<'a>> for Cpal
impl<'a> FromObjRef<Dsig<'a>> for Dsig
impl<'a> FromObjRef<SignatureBlockFormat1<'a>> for SignatureBlockFormat1
impl<'a> FromObjRef<InstanceRecord<'a>> for InstanceRecord
impl<'a> FromObjRef<AxisInstanceArrays<'a>> for AxisInstanceArrays
impl<'a> FromObjRef<Fvar<'a>> for Fvar
impl<'a> FromObjRef<Gasp<'a>> for Gasp
impl<'a> FromObjRef<AttachList<'a>> for AttachList
impl<'a> FromObjRef<AttachPoint<'a>> for AttachPoint
impl<'a> FromObjRef<CaretValueFormat1<'a>> for CaretValueFormat1
impl<'a> FromObjRef<CaretValueFormat2<'a>> for CaretValueFormat2
impl<'a> FromObjRef<CaretValueFormat3<'a>> for CaretValueFormat3
impl<'a> FromObjRef<Gdef<'a>> for Gdef
impl<'a> FromObjRef<LigCaretList<'a>> for LigCaretList
impl<'a> FromObjRef<LigGlyph<'a>> for LigGlyph
impl<'a> FromObjRef<MarkGlyphSets<'a>> for MarkGlyphSets
impl<'a> FromObjRef<AnchorFormat1<'a>> for AnchorFormat1
impl<'a> FromObjRef<AnchorFormat2<'a>> for AnchorFormat2
impl<'a> FromObjRef<AnchorFormat3<'a>> for AnchorFormat3
impl<'a> FromObjRef<BaseArray<'a>> for BaseArray
impl<'a> FromObjRef<CursivePosFormat1<'a>> for CursivePosFormat1
impl<'a> FromObjRef<Gpos<'a>> for Gpos
impl<'a> FromObjRef<LigatureArray<'a>> for LigatureArray
impl<'a> FromObjRef<LigatureAttach<'a>> for LigatureAttach
impl<'a> FromObjRef<Mark2Array<'a>> for Mark2Array
impl<'a> FromObjRef<MarkArray<'a>> for MarkArray
impl<'a> FromObjRef<MarkBasePosFormat1<'a>> for MarkBasePosFormat1
impl<'a> FromObjRef<MarkLigPosFormat1<'a>> for MarkLigPosFormat1
impl<'a> FromObjRef<MarkMarkPosFormat1<'a>> for MarkMarkPosFormat1
impl<'a> FromObjRef<PairPosFormat1<'a>> for PairPosFormat1
impl<'a> FromObjRef<PairPosFormat2<'a>> for PairPosFormat2
impl<'a> FromObjRef<PairSet<'a>> for PairSet
impl<'a> FromObjRef<SinglePosFormat1<'a>> for SinglePosFormat1
impl<'a> FromObjRef<SinglePosFormat2<'a>> for SinglePosFormat2
impl<'a> FromObjRef<AlternateSet<'a>> for AlternateSet
impl<'a> FromObjRef<AlternateSubstFormat1<'a>> for AlternateSubstFormat1
impl<'a> FromObjRef<Gsub<'a>> for Gsub
impl<'a> FromObjRef<Ligature<'a>> for Ligature
impl<'a> FromObjRef<LigatureSet<'a>> for LigatureSet
impl<'a> FromObjRef<LigatureSubstFormat1<'a>> for LigatureSubstFormat1
impl<'a> FromObjRef<MultipleSubstFormat1<'a>> for MultipleSubstFormat1
impl<'a> FromObjRef<ReverseChainSingleSubstFormat1<'a>> for ReverseChainSingleSubstFormat1
impl<'a> FromObjRef<Sequence<'a>> for Sequence
impl<'a> FromObjRef<SingleSubstFormat1<'a>> for SingleSubstFormat1
impl<'a> FromObjRef<SingleSubstFormat2<'a>> for SingleSubstFormat2
impl<'a> FromObjRef<Head<'a>> for Head
impl<'a> FromObjRef<Hhea<'a>> for Hhea
impl<'a> FromObjRef<Hmtx<'a>> for Hmtx
impl<'a> FromObjRef<Hvar<'a>> for Hvar
impl<'a> FromObjRef<EntryData<'a>> for EntryData
Available on crate feature
ift only.impl<'a> FromObjRef<FeatureMap<'a>> for FeatureMap
Available on crate feature
ift only.impl<'a> FromObjRef<GlyphData<'a>> for write_fonts::tables::ift::GlyphData
Available on crate feature
ift only.impl<'a> FromObjRef<GlyphKeyedPatch<'a>> for GlyphKeyedPatch
Available on crate feature
ift only.impl<'a> FromObjRef<GlyphMap<'a>> for GlyphMap
Available on crate feature
ift only.impl<'a> FromObjRef<GlyphPatches<'a>> for GlyphPatches
Available on crate feature
ift only.impl<'a> FromObjRef<IdStringData<'a>> for IdStringData
Available on crate feature
ift only.impl<'a> FromObjRef<MappingEntries<'a>> for MappingEntries
Available on crate feature
ift only.impl<'a> FromObjRef<PatchMapFormat1<'a>> for PatchMapFormat1
Available on crate feature
ift only.impl<'a> FromObjRef<PatchMapFormat2<'a>> for PatchMapFormat2
Available on crate feature
ift only.impl<'a> FromObjRef<TableKeyedPatch<'a>> for TableKeyedPatch
Available on crate feature
ift only.impl<'a> FromObjRef<TablePatch<'a>> for TablePatch
Available on crate feature
ift only.