ONE - On-device Neural Engine
Loading...
Searching...
No Matches
luci::CircleLessGraphBuilder Class Reference

#include <CircleLess.h>

Collaboration diagram for luci::CircleLessGraphBuilder:

Public Member Functions

bool validate (const ValidateArgs &args) const final
 
- Public Member Functions inherited from luci::GraphBuilder
virtual ~GraphBuilder ()=default
 
bool validate (const ValidateArgs &args, size_t input_cnt) const
 
CircleNodebuild (const circle::OperatorT &op, GraphBuilderContext *context) const final
 
- Public Member Functions inherited from luci::GraphBuilderBase
virtual ~GraphBuilderBase ()=default
 

Detailed Description

Definition at line 25 of file CircleLess.h.

Member Function Documentation

◆ validate()

bool luci::CircleLessGraphBuilder::validate ( const ValidateArgs args) const
finalvirtual

Implements luci::GraphBuilderBase.

Definition at line 26 of file CircleLess.cpp.

27{
28 if (!GraphBuilder::validate(args, 2))
29 return false;
30
31 const auto &inputs = args.op.inputs;
32 const auto &outputs = args.op.outputs;
33 const auto tensors = args.reader.tensors();
34 const auto tensor = tensors.at(inputs.at(0));
35 assert(tensor != nullptr);
36
37 switch (tensor->type())
38 {
39 case circle::TensorType_FLOAT32:
40 case circle::TensorType_FLOAT64:
41 case circle::TensorType_INT32:
42 case circle::TensorType_UINT8:
43 case circle::TensorType_INT16:
44 case circle::TensorType_INT8:
45 case circle::TensorType_INT64:
46 case circle::TensorType_FLOAT16:
47 break;
48 default:
49 return false;
50 }
51
52 assert(tensors[inputs.at(1)] != nullptr);
53 if (tensors[inputs.at(1)]->type() != tensor->type())
54 {
55 return false;
56 }
57
58 assert(tensors[outputs[0]] != nullptr);
59 return tensors[outputs[0]]->type() == circle::TensorType_BOOL;
60}
bool validate(const ValidateArgs &args, size_t input_cnt) const
args
Definition infer.py:21

References luci::GraphBuilder::validate().


The documentation for this class was generated from the following files: