def vcall(self, module : 'Field', graph : 'Graph', inst : 'values.Object', args : 'functions.FunctionArgInput', line = -1): node = nodes.NodeCall(self, [inst.get_value()], line) value = values.ListValue() value.name = '@F.{}.{}'.format(line, self.name) node.set_outputs([value]) # TODO should make tuple graph.add_node(node) return values.Object(value)
def vcall(self, module : 'Field', graph : 'Graph', inst : 'values.Object', args = [], line = -1): funcArgs = self.parse_args(args) vargs = self.get_values(funcArgs) node = nodes.NodeCall(self, vargs, line) graph.add_node(node) value = functions.generate_value_with_same_type(vargs[0]) value.name = '@F.{}.{}'.format(line, self.name) node.set_outputs([value]) return values.Object(value)
def vcall(self, module: 'Field', graph: 'Graph', inst: 'values.ValueRef', args: 'functions.FunctionArgInput', line=-1): funcArgs = self.args.merge_inputs(inst, args) node = nodes.NodeCall(self, funcArgs, line) graph.add_node(node) #value = functions.generate_value_with_same_type(vargs[0]) value = self.ret_value_func() value.name = '@F.{}.{}'.format(line, self.name) node.set_outputs([value]) return values.ValueRef(value)
def vcall(self, module : 'Field', graph : 'Graph', inst : 'values.Object', args = [], line = -1): assert(len(args) == 0) node = nodes.NodeCall(self, [inst.get_value()] + [v.obj.get_value() for v in args], line) value = values.ListValue() value.name = '@F.{}.{}'.format(line, self.name) node.set_outputs([value]) # TODO should make tuple graph.add_node(node) return values.Object(value)
def vcall(self, module: 'values.Field', graph: 'core.Graph', inst: 'values.Value', args=[], line=-1): assert (len(args) == 1) node = nodes.NodeCall(self, [v.value for v in args], line) inst.modify(node, None) graph.add_node(node) return values.NoneValue()
def vcall(self, module: 'values.Field', graph: 'core.Graph', inst: 'Value', args=[], line=-1): funcArgs = self.parse_args(args) node = nodes.NodeCall(self, [v.value for v in funcArgs], line) graph.add_node(node) value = functions.generate_value_with_same_type(funcArgs[0].value) node.set_outputs([value]) return value
def vcall(self, module : 'Field', graph : 'Graph', inst : 'values.Object', args = [], line = -1): assert(len(args) == 1) node = nodes.NodeCall(self, [inst.get_value()] + [v.obj.get_value() for v in args], line) old_v = inst.get_value() new_v = functions.generate_value_with_same_type(old_v) inst.revise(new_v) new_v.name = '@F.{}.{}'.format(line, self.name) node.set_outputs([new_v]) graph.add_node(node) return values.NoneValue()
def vcall(self, module: 'Field', graph: 'Graph', inst: 'values.ValueRef', args: 'functions.FunctionArgInput', line=-1): funcArgs = self.args.merge_inputs(inst, args) node = nodes.NodeCall(self, funcArgs, line) old_v = inst.get_value() new_v = functions.generate_value_with_same_type(old_v) inst.revise(new_v) new_v.name = '@F.{}.{}'.format(line, self.name) node.set_outputs([new_v]) graph.add_node(node) return values.NoneValue()
def vcall(self, module: 'values.Field', graph: 'Graph', inst: 'Object', args: 'functions.FunctionArgInput', line=-1): node = nodes.NodeCall(self, [v.get_value() for v in args.inputs], line) graph.add_node(node) value = values.TensorValue() estimate_shape = chainer_links[type(self.owner.inst)].estimate_shape if estimate_shape is not None: value.shape = estimate_shape(self.owner.inst, args) node.set_outputs([value]) return values.Object(value)
def vcall(self, module: 'values.Field', graph: 'Graph', inst: 'values.ValueRef', args: 'functions.FunctionArgInput', line=-1): vargs = self.args.merge_inputs(inst, args) node = nodes.NodeCall(self, vargs, line) graph.add_node(node) value = values.TensorValue() estimate_shape = chainer_links[type(self.owner.inst)].estimate_shape if estimate_shape is not None: value.shape = estimate_shape(self.owner.inst, vargs) node.set_outputs([value]) return values.ValueRef(value)
def vcall(self, module: 'Field', graph: 'Graph', inst: 'values.ValueRef', args: 'functions.FunctionArgInput', line=-1): args = functions.FunctionArgInput() args.inputs.append(inst) args.keywords['self'] = inst node = nodes.NodeCall(self, args, line) value = values.NumberValue(None) value.dtype = np.array(0).dtype value.name = '@F.{}.{}'.format(line, self.name) node.set_outputs([value]) graph.add_node(node) return values.ValueRef(value)
def vcall(self, module: 'Field', graph: 'Graph', inst: 'values.ValueRef', args: 'functions.FunctionArgInput', line=-1): args = functions.FunctionArgInput() args.inputs.append(inst) args.keywords['self'] = inst node = nodes.NodeCall(self, args, line) value = values.ListValue() value.name = '@F.{}.{}'.format(line, self.name) node.set_outputs([value]) # TODO should make tuple graph.add_node(node) return values.ValueRef(value)
def vcall(self, module: 'values.Field', graph: 'Graph', inst: 'Object', args=[], line=-1): node = nodes.NodeCall(self, [v.obj.get_value() for v in args], line) graph.add_node(node) value = values.TensorValue() # TODO refactor if (isinstance(self.owner.inst, chainer.links.Linear)): cn = self.owner.inst # type: chainer.links.Linear if isinstance(args[0].obj.get_value(), values.TensorValue) and len( args[0].obj.get_value().shape) >= 2: value.shape = (args[0].obj.get_value().shape[0], cn.out_size) if (isinstance(self.owner.inst, chainer.links.Convolution2D)): value = functions.generate_tensor_value_with_undefined_shape_size( args[0].obj.get_value()) node.set_outputs([value]) return values.Object(value)