onnxruntime/js/web/lib/onnxjs/backends/webgl/ops/shape.ts

17 lines
588 B
TypeScript
Raw Normal View History

2021-06-08 13:22:45 +00:00
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
import { Tensor } from '../../../tensor';
import { WebGLInferenceHandler } from '../inference-handler';
2021-06-08 13:22:45 +00:00
export const shape = (_inferenceHandler: WebGLInferenceHandler, inputs: Tensor[]): Tensor[] => {
validateInputs(inputs);
return [new Tensor([inputs[0].dims.length], 'int32', undefined, undefined, new Int32Array(inputs[0].dims))];
};
2021-06-08 13:22:45 +00:00
const validateInputs = (inputs: Tensor[]): void => {
if (!inputs || inputs.length !== 1) {
throw new Error('Shape requires 1 input.');
2021-06-08 13:22:45 +00:00
}
};