'Assign an input value to the CPU tensor. The NervanaCPU does clipping
for int and uint types, when overflow happens
Arguments:
value (CPUTensor, OpTreeNode, numeric): the value to be assigned.'

def _assign(self, value):

    if isinstance(value, (CPUTensor, OpTreeNode)):
        OpTreeNode.build('assign', self, value)
    elif isinstance(value, (int, float, np.ndarray)):
        self.set(value)
    else:
        raise TypeError(('Invalid    type    for    assignment:    %s' % type(value)))
    return self
