#![allow(missing_docs)]
use uor_foundation::enforcement::GroundedShape;
use uor_foundation::pipeline::{ConstrainedTypeShape, ConstraintRef, IntoBindingValue, TermValue};
#[derive(Debug, Clone, Copy)]
pub struct Tensor3Shape<const D0: usize, const D1: usize, const D2: usize, const ELEM_BYTES: usize>;
impl<const D0: usize, const D1: usize, const D2: usize, const ELEM_BYTES: usize> Default
for Tensor3Shape<D0, D1, D2, ELEM_BYTES>
{
fn default() -> Self {
Self
}
}
impl<const D0: usize, const D1: usize, const D2: usize, const ELEM_BYTES: usize>
ConstrainedTypeShape for Tensor3Shape<D0, D1, D2, ELEM_BYTES>
{
const IRI: &'static str = "https://uor.foundation/type/ConstrainedType";
const SITE_COUNT: usize = D0 * D1 * D2 * ELEM_BYTES;
const CONSTRAINTS: &'static [ConstraintRef] = &[];
#[allow(clippy::cast_possible_truncation)]
const CYCLE_SIZE: u64 = 256u64.saturating_pow((D0 * D1 * D2 * ELEM_BYTES) as u32);
}
impl<const D0: usize, const D1: usize, const D2: usize, const ELEM_BYTES: usize>
uor_foundation::pipeline::__sdk_seal::Sealed for Tensor3Shape<D0, D1, D2, ELEM_BYTES>
{
}
impl<const D0: usize, const D1: usize, const D2: usize, const ELEM_BYTES: usize> GroundedShape
for Tensor3Shape<D0, D1, D2, ELEM_BYTES>
{
}
impl<'a, const D0: usize, const D1: usize, const D2: usize, const ELEM_BYTES: usize>
IntoBindingValue<'a> for Tensor3Shape<D0, D1, D2, ELEM_BYTES>
{
fn as_binding_value<const INLINE_BYTES: usize>(&self) -> TermValue<'a, INLINE_BYTES> {
TermValue::empty()
}
}
#[derive(Debug, Clone, Copy)]
pub struct Tensor4Shape<
const D0: usize,
const D1: usize,
const D2: usize,
const D3: usize,
const ELEM_BYTES: usize,
>;
impl<
const D0: usize,
const D1: usize,
const D2: usize,
const D3: usize,
const ELEM_BYTES: usize,
> Default for Tensor4Shape<D0, D1, D2, D3, ELEM_BYTES>
{
fn default() -> Self {
Self
}
}
impl<
const D0: usize,
const D1: usize,
const D2: usize,
const D3: usize,
const ELEM_BYTES: usize,
> ConstrainedTypeShape for Tensor4Shape<D0, D1, D2, D3, ELEM_BYTES>
{
const IRI: &'static str = "https://uor.foundation/type/ConstrainedType";
const SITE_COUNT: usize = D0 * D1 * D2 * D3 * ELEM_BYTES;
const CONSTRAINTS: &'static [ConstraintRef] = &[];
#[allow(clippy::cast_possible_truncation)]
const CYCLE_SIZE: u64 = 256u64.saturating_pow((D0 * D1 * D2 * D3 * ELEM_BYTES) as u32);
}
impl<
const D0: usize,
const D1: usize,
const D2: usize,
const D3: usize,
const ELEM_BYTES: usize,
> uor_foundation::pipeline::__sdk_seal::Sealed for Tensor4Shape<D0, D1, D2, D3, ELEM_BYTES>
{
}
impl<
const D0: usize,
const D1: usize,
const D2: usize,
const D3: usize,
const ELEM_BYTES: usize,
> GroundedShape for Tensor4Shape<D0, D1, D2, D3, ELEM_BYTES>
{
}
impl<
'a,
const D0: usize,
const D1: usize,
const D2: usize,
const D3: usize,
const ELEM_BYTES: usize,
> IntoBindingValue<'a> for Tensor4Shape<D0, D1, D2, D3, ELEM_BYTES>
{
fn as_binding_value<const INLINE_BYTES: usize>(&self) -> TermValue<'a, INLINE_BYTES> {
TermValue::empty()
}
}