@@ -517,36 +517,36 @@ impl GraphEngine {
517517 V : ToVertexId ,
518518 {
519519 let vertex_field = ed. as_field ( ) ;
520- let edge_schema_id = edge_schema. to_id ( & self . schemas ) ;
521- let vertex_id = vertex. to_id ( ) ;
522- let edge_attr = match self . schemas . schema_type ( edge_schema_id ) {
520+ let schema_id = edge_schema. to_id ( & self . schemas ) ;
521+ let vertex_id = & vertex. to_id ( ) ;
522+ let edge_attrs = match self . schemas . schema_type ( schema_id ) {
523523 Some ( GraphSchema :: Edge ( ea) ) => ea,
524- Some ( _) => return Err ( NeighbourhoodError :: EdgeError ( EdgeError :: WrongSchema ) ) ,
525- None => return Err ( NeighbourhoodError :: EdgeError ( EdgeError :: CannotFindSchema ) ) ,
524+ _ => {
525+ return Err ( NeighbourhoodError :: EdgeError (
526+ EdgeError :: CannotFindSchema ,
527+ ) )
528+ }
526529 } ;
527- if edge_attr. has_body {
528- return Err ( NeighbourhoodError :: LocalEdgeCannotHaveBody ) ;
529- }
530- match LocalIdList :: new ( & * self . local_chunks , vertex_id, vertex_field, edge_schema_id) . iter ( )
530+ match LocalIdList :: new ( & * self . local_chunks , * vertex_id, vertex_field, schema_id) . iter ( )
531531 {
532532 Ok ( Ok ( mut id_list) ) => {
533533 let mut result = Vec :: new ( ) ;
534534 while let Some ( opposite_id) = id_list. next ( ) {
535- match edge_attr . edge_type {
535+ match edge_attrs . edge_type {
536536 EdgeType :: Directed => {
537537 let edge = DirectedEdge :: build_edge (
538- vertex_id,
538+ * vertex_id,
539539 opposite_id,
540- edge_schema_id ,
540+ schema_id ,
541541 None ,
542542 ) ;
543543 result. push ( ( opposite_id, Edge :: Directed ( edge) ) ) ;
544544 }
545545 EdgeType :: Undirected => {
546546 let edge = UndirectedEdge :: build_edge (
547- vertex_id,
547+ * vertex_id,
548548 opposite_id,
549- edge_schema_id ,
549+ schema_id ,
550550 None ,
551551 ) ;
552552 result. push ( ( opposite_id, Edge :: Undirected ( edge) ) ) ;
0 commit comments