# tensorflow::ops::MatrixSetDiagV3::Attrs Struct Reference

# tensorflow::ops::MatrixSetDiagV3::Attrs

`#include <array_ops.h>`

Optional attribute setters for [MatrixSetDiagV3](https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/matrix-set-diag-v3#classtensorflow_1_1ops_1_1_matrix_set_diag_v3).

## Summary

| ### Public attributes ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/matrix-set-diag-v3/attrs#structtensorflow_1_1ops_1_1_matrix_set_diag_v3_1_1_attrs_1ab4717dd168a0bce9a9cf8e1c16f197a3 = "RIGHT_LEFT"` | `StringPiece` |

| ### Public functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/matrix-set-diag-v3/attrs#structtensorflow_1_1ops_1_1_matrix_set_diag_v3_1_1_attrs_1a752d915f79d47786183ec52d2c3e0b2e(StringPiece x)` | `TF_MUST_USE_RESULT https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/matrix-set-diag-v3/attrs#structtensorflow_1_1ops_1_1_matrix_set_diag_v3_1_1_attrs` Some diagonals are shorter than `max_diag_len` and need to be padded. |

## Public attributes

### align_

```
StringPiece tensorflow::ops::MatrixSetDiagV3::Attrs::align_ = "RIGHT_LEFT"
```

## Public functions

### Align

```
TF_MUST_USE_RESULT Attrs tensorflow::ops::MatrixSetDiagV3::Attrs::Align(
  StringPiece x
)
```
Some diagonals are shorter than `max_diag_len` and need to be padded.

`align` is a string specifying how superdiagonals and subdiagonals should be aligned, respectively. There are four possible alignments: "RIGHT_LEFT" (default), "LEFT_RIGHT", "LEFT_LEFT", and "RIGHT_RIGHT". "RIGHT_LEFT" aligns superdiagonals to the right (left-pads the row) and subdiagonals to the left (right-pads the row). It is the packing format LAPACK uses. cuSPARSE uses "LEFT_RIGHT", which is the opposite alignment.

Defaults to "RIGHT_LEFT"