As returned object of `get_next` api of `edge_sampler` , as returned object of `get_edges` of `Graph` or as in-memory object for constructing graph.
| 446 | |
| 447 | |
| 448 | class Edges(Values): |
| 449 | """ As returned object of `get_next` api of `edge_sampler` , |
| 450 | as returned object of `get_edges` of `Graph` or as in-memory object |
| 451 | for constructing graph. |
| 452 | """ |
| 453 | |
| 454 | def __init__(self, |
| 455 | src_ids=None, |
| 456 | src_type=None, |
| 457 | dst_ids=None, |
| 458 | dst_type=None, |
| 459 | edge_type=None, |
| 460 | edge_ids=None, |
| 461 | src_nodes=None, |
| 462 | dst_nodes=None, |
| 463 | int_attrs=None, |
| 464 | float_attrs=None, |
| 465 | string_attrs=None, |
| 466 | weights=None, |
| 467 | labels=None, |
| 468 | shape=None, |
| 469 | graph=None): |
| 470 | super(Edges, self).__init__(int_attrs=None, |
| 471 | float_attrs=None, |
| 472 | string_attrs=None, |
| 473 | weights=weights, |
| 474 | labels=labels, |
| 475 | shape=shape, |
| 476 | graph=graph) |
| 477 | if src_ids is not None: |
| 478 | src_ids = np.array(src_ids) |
| 479 | if edge_ids is not None: |
| 480 | edge_ids = np.array(edge_ids) |
| 481 | if dst_ids is not None: |
| 482 | dst_ids = np.array(dst_ids) |
| 483 | |
| 484 | if shape is None: |
| 485 | if src_ids is not None: |
| 486 | self._shape = src_ids.shape |
| 487 | if edge_ids is not None: |
| 488 | self._shape = edge_ids.shape |
| 489 | else: |
| 490 | real_shape = src_ids.shape if src_ids is not None else edge_ids.shape |
| 491 | if np.prod(real_shape) == np.prod(shape): |
| 492 | self._shape = shape |
| 493 | else: |
| 494 | self._shape = real_shape[0:] if len(shape) == 1 else \ |
| 495 | (int(np.prod(real_shape) / np.prod(shape[1:])), ) + shape[-1:] |
| 496 | |
| 497 | self._src_ids = self._reshape(src_ids) |
| 498 | self._src_type = src_type |
| 499 | self._dst_ids = self._reshape(dst_ids) |
| 500 | self._dst_type = dst_type |
| 501 | self._edge_type = edge_type |
| 502 | self._edge_ids = self._reshape(edge_ids) |
| 503 | self._src_nodes = src_nodes |
| 504 | self._dst_nodes = dst_nodes |
| 505 |