---
title: "ClikaRT::ops::slice"
sidebar_label: "slice"
description: "[start, end) with step along one dim. Each bound is an int literal, a 0-D integer Tensor, or absent ({}, an open bound); absent step is 1."
---

<!-- Generated by tools/doxygen2mdx from Doxygen XML. Do not edit. -->

<span class="api-kind api-kind--function">function</span>

2 overloads.

## slice(Tensor, int64\_t, IndexBound, IndexBound, …) {#slice}

<div class="api-signature">

[`Tensor`](../Tensor.md) **`slice`**(<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`Tensor`](../Tensor.md) `input`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;`int64_t` `dim`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`IndexBound`](./IndexBound.md) `start` `=` `{}`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`IndexBound`](./IndexBound.md) `end` `=` `{}`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`IndexBound`](./IndexBound.md) `step` `=` `1`<br />
)

</div>

`[start, end)` with `step` along one dim. Each bound is an int literal, a 0-D integer [Tensor](../Tensor.md), or absent (`{}`, an open bound); absent step is 1.

<div class="api-declared">

Declared in `ClikaRT/compute/ops.h`, line 3441

</div>

## slice(Tensor, Span\< int64\_t\>, Span\< IndexBound\>, Span\< IndexBound\>, …) {#slice-2}

<div class="api-signature">

[`Tensor`](../Tensor.md) **`slice`**(<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`Tensor`](../Tensor.md) `input`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`ClikaRT::Span`](../Span.md)`<const std::int64_t>` `dim`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`ClikaRT::Span`](../Span.md)`<const` [`IndexBound`](./IndexBound.md)`>` `start` `=` `{}`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`ClikaRT::Span`](../Span.md)`<const` [`IndexBound`](./IndexBound.md)`>` `end` `=` `{}`,<br />
&nbsp;&nbsp;&nbsp;&nbsp;[`ClikaRT::Span`](../Span.md)`<const` [`IndexBound`](./IndexBound.md)`>` `step` `=` `{}`<br />
)

</div>

Strided slice: for each axis in `dim`, take \[start, end) with `step`. An empty start/end/step means full-range / unit-step.

<div class="api-declared">

Declared in `ClikaRT/compute/ops.h`, line 5478

</div>
