[−][src]Struct tract_hir::ops::array::Slice
Fields
axis: usize
start: D
end: D
Implementations
impl<D> Slice<D> where
D: DimLike + ToDim,
[src]
D: DimLike + ToDim,
Trait Implementations
impl<D> Clone for Slice<D> where
D: DimLike + ToDim + Clone,
[src]
D: DimLike + ToDim + Clone,
impl<D> Debug for Slice<D> where
D: DimLike + ToDim + Debug,
[src]
D: DimLike + ToDim + Debug,
impl<D> Default for Slice<D> where
D: DimLike + ToDim + Default,
[src]
D: DimLike + ToDim + Default,
impl<D> DynHash for Slice<D> where
D: DimLike + ToDim + Hash,
[src]
D: DimLike + ToDim + Hash,
impl<D> Hash for Slice<D> where
D: DimLike + ToDim + Hash,
[src]
D: DimLike + ToDim + Hash,
fn hash<__H>(&self, state: &mut __H) where
__H: Hasher,
[src]
__H: Hasher,
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl<D: DimLike + ToDim> InferenceRulesOp for Slice<D>
[src]
fn rules<'r, 'p: 'r, 's: 'r>(
&'s self,
s: &mut Solver<'r>,
inputs: &'p [TensorProxy],
outputs: &'p [TensorProxy]
) -> InferenceResult
[src]
&'s self,
s: &mut Solver<'r>,
inputs: &'p [TensorProxy],
outputs: &'p [TensorProxy]
) -> InferenceResult
fn as_op(&self) -> &dyn Op
[src]
fn as_op_mut(&mut self) -> &mut dyn Op
[src]
fn to_typed(
&self,
_source: &InferenceModel,
node: &InferenceNode,
target: &mut TypedModel,
mapping: &HashMap<OutletId, OutletId>
) -> TractResult<TVec<OutletId>>
[src]
&self,
_source: &InferenceModel,
node: &InferenceNode,
target: &mut TypedModel,
mapping: &HashMap<OutletId, OutletId>
) -> TractResult<TVec<OutletId>>
fn nboutputs(&self) -> TractResult<usize>
[src]
fn incorporate(
&self,
model: &InferenceModel,
node: &InferenceNode
) -> TractResult<Option<InferenceModelPatch>>
[src]
&self,
model: &InferenceModel,
node: &InferenceNode
) -> TractResult<Option<InferenceModelPatch>>
impl<D> Op for Slice<D> where
D: DimLike + ToDim + Hash,
[src]
D: DimLike + ToDim + Hash,
fn name(&self) -> Cow<str>
[src]
fn info(&self) -> Result<Vec<String>, TractError>
[src]
fn is_canonic(&self) -> bool
[src]
fn op_families(&self) -> &'static [&'static str]
[src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
[src]
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
[src]
fn same_as(&self, other: &(dyn Op + 'static)) -> bool
[src]
fn nested_models(
&self
) -> Vec<(Cow<str>, &(dyn Model + 'static), Vec<String>, Vec<String>)>
[src]
&self
) -> Vec<(Cow<str>, &(dyn Model + 'static), Vec<String>, Vec<String>)>
fn validation(&self) -> Validation
[src]
impl<D> PartialEq<Slice<D>> for Slice<D> where
D: DimLike + ToDim + PartialEq<D>,
[src]
D: DimLike + ToDim + PartialEq<D>,
impl<D> PulsedOp for Slice<D> where
D: DimLike + ToDim + Hash,
[src]
D: DimLike + ToDim + Hash,
fn pulsed_output_facts(
&self,
inputs: &[&PulsedFact]
) -> Result<SmallVec<[PulsedFact; 4]>, TractError>
[src]
&self,
inputs: &[&PulsedFact]
) -> Result<SmallVec<[PulsedFact; 4]>, TractError>
fn as_op(&self) -> &(dyn Op + 'static)
[src]
fn as_op_mut(&mut self) -> &mut (dyn Op + 'static)
[src]
fn to_typed(&self) -> Box<dyn TypedOp + 'static>
[src]
impl<D> StatelessOp for Slice<D> where
D: DimLike + ToDim + Hash,
[src]
D: DimLike + ToDim + Hash,
fn eval(
&self,
inputs: SmallVec<[Arc<Tensor>; 4]>
) -> Result<SmallVec<[Arc<Tensor>; 4]>, TractError>
[src]
&self,
inputs: SmallVec<[Arc<Tensor>; 4]>
) -> Result<SmallVec<[Arc<Tensor>; 4]>, TractError>
Evaluates the operation given the input tensors.
impl<D> StructuralPartialEq for Slice<D> where
D: DimLike + ToDim,
[src]
D: DimLike + ToDim,
impl<D> TypedOp for Slice<D> where
D: DimLike + ToDim + Hash,
[src]
D: DimLike + ToDim + Hash,
fn output_facts(
&self,
inputs: &[&TypedFact]
) -> Result<SmallVec<[TypedFact; 4]>, TractError>
[src]
&self,
inputs: &[&TypedFact]
) -> Result<SmallVec<[TypedFact; 4]>, TractError>
fn invariants(
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>
) -> Result<Invariants, TractError>
[src]
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>
) -> Result<Invariants, TractError>
fn change_axes(
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>,
_io: InOut,
change: &AxisOp
) -> Result<Option<AxisChangeConsequence>, TractError>
[src]
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>,
_io: InOut,
change: &AxisOp
) -> Result<Option<AxisChangeConsequence>, TractError>
fn declutter(
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>
) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static>>>, TractError>
[src]
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>
) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static>>>, TractError>
fn pulsify(
&self,
_source: &ModelImpl<NormalizedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<NormalizedFact, Box<dyn TypedOp + 'static>>,
target: &mut ModelImpl<PulsedFact, Box<dyn PulsedOp + 'static>>,
mapping: &HashMap<OutletId, OutletId, RandomState>,
_pulse: usize
) -> Result<SmallVec<[OutletId; 4]>, TractError>
[src]
&self,
_source: &ModelImpl<NormalizedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<NormalizedFact, Box<dyn TypedOp + 'static>>,
target: &mut ModelImpl<PulsedFact, Box<dyn PulsedOp + 'static>>,
mapping: &HashMap<OutletId, OutletId, RandomState>,
_pulse: usize
) -> Result<SmallVec<[OutletId; 4]>, TractError>
fn slice_output(
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>,
patch: &mut ModelPatch<TypedFact, Box<dyn TypedOp + 'static>>,
_output_slot: usize,
axis: usize,
start: usize,
end: usize
) -> Result<Option<OutletId>, TractError>
[src]
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>,
patch: &mut ModelPatch<TypedFact, Box<dyn TypedOp + 'static>>,
_output_slot: usize,
axis: usize,
start: usize,
end: usize
) -> Result<Option<OutletId>, TractError>
fn as_op(&self) -> &(dyn Op + 'static)
[src]
fn as_op_mut(&mut self) -> &mut (dyn Op + 'static)
[src]
fn fuse(
&self,
_model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
_node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>
) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static>>>, TractError>
[src]
&self,
_model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
_node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>
) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static>>>, TractError>
fn cost(
&self,
_inputs: &[&TypedFact]
) -> Result<SmallVec<[(Cost, TDim); 4]>, TractError>
[src]
&self,
_inputs: &[&TypedFact]
) -> Result<SmallVec<[(Cost, TDim); 4]>, TractError>
fn suggested_axis_changes(
&self
) -> Result<SmallVec<[(InOut, AxisOp); 4]>, TractError>
[src]
&self
) -> Result<SmallVec<[(InOut, AxisOp); 4]>, TractError>
fn quantize(
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>,
dt: DatumType,
scale: f32,
zero_point: i32
) -> Result<Option<Box<dyn TypedOp + 'static>>, TractError>
[src]
&self,
model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>,
dt: DatumType,
scale: f32,
zero_point: i32
) -> Result<Option<Box<dyn TypedOp + 'static>>, TractError>
fn codegen(
&self,
_model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
_node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>
) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static>>>, TractError>
[src]
&self,
_model: &ModelImpl<TypedFact, Box<dyn TypedOp + 'static>>,
_node: &BaseNode<TypedFact, Box<dyn TypedOp + 'static>>
) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static>>>, TractError>
fn nested_model_multipliers(
&self,
inputs: &[&TypedFact]
) -> Vec<(Cow<str>, f64)>
[src]
&self,
inputs: &[&TypedFact]
) -> Vec<(Cow<str>, f64)>
Auto Trait Implementations
impl<D> RefUnwindSafe for Slice<D> where
D: RefUnwindSafe,
D: RefUnwindSafe,
impl<D> Send for Slice<D>
impl<D> Sync for Slice<D>
impl<D> Unpin for Slice<D> where
D: Unpin,
D: Unpin,
impl<D> UnwindSafe for Slice<D> where
D: UnwindSafe,
D: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Downcast for T where
T: Any,
T: Any,
fn into_any(self: Box<T>) -> Box<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn as_any(&self) -> &(dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
impl<T> DowncastSync for T where
T: Send + Sync + Any,
T: Send + Sync + Any,
impl<T> DynClone for T where
T: Clone,
[src]
T: Clone,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<O> StatefullOp for O where
O: StatelessOp + Clone,
[src]
O: StatelessOp + Clone,
fn state(
&self,
_session: &mut SessionState,
_node_id: usize
) -> Result<Option<Box<dyn OpState + 'static>>, TractError>
[src]
&self,
_session: &mut SessionState,
_node_id: usize
) -> Result<Option<Box<dyn OpState + 'static>>, TractError>
fn as_stateless(&self) -> Option<&(dyn StatelessOp + 'static)>
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,