提交 f956522f authored 作者: Arnaud Bergeron's avatar Arnaud Bergeron

We really need infer_shape to not be present when we can't do it.

上级 e66df9f9
...@@ -383,6 +383,8 @@ class FromFunctionOp(gof.Op): ...@@ -383,6 +383,8 @@ class FromFunctionOp(gof.Op):
self.itypes = itypes self.itypes = itypes
self.otypes = otypes self.otypes = otypes
self.__infer_shape = infer_shape self.__infer_shape = infer_shape
if self.__infer_shape is not None:
self.infer_shape = self._infer_shape
def __eq__(self, other): def __eq__(self, other):
return (type(self) == type(other) and return (type(self) == type(other) and
...@@ -407,12 +409,8 @@ class FromFunctionOp(gof.Op): ...@@ -407,12 +409,8 @@ class FromFunctionOp(gof.Op):
for i in range(len(outs)): for i in range(len(outs)):
outputs[i][0] = outs[i] outputs[i][0] = outs[i]
def infer_shape(self, node, input_shapes): def _infer_shape(self, node, input_shapes):
if self.__infer_shape:
return self.__infer_shape(node, input_shapes) return self.__infer_shape(node, input_shapes)
else:
# fake method not defined
raise AttributeError('infer_shape')
def as_op(itypes, otypes, infer_shape=None): def as_op(itypes, otypes, infer_shape=None):
""" """
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论