+
     h   c                   s2    ^RI Ht ^RIHt  ! R R4      tR# )   )Edge)Nodec                   s~   a  ] tR t^t o R t]R 4       tR tR tR t	R t
R tR tR	 tR
 tR tR tR tR tRtV tR# )Pathc                s    \        V\        4      '       d   \        V\        4      '       g   \        R 4      hWn        W n        \
        V n        R# )znodes and edges must be listN)
isinstanceZlistZ	TypeError_nodes_edgesr   append_type)selfnodesedgess   &&&>/usr/lib/python3.14/site-packages/redis/commands/graph/path.py__init__ZPath.__init__   s9    5$''Jud,C,C:;;    c                s    V ! . . 4      # N )Zcls   &r   new_empty_pathZPath.new_empty_path   s    2r{r   c                    V P                   # r   r   r   r   r   r	   Z
Path.nodes       {{r   c                r   r   r   r   r   r   r
   Z
Path.edges   r   r   c                (    V P                   V,          # r   r   r   Zindex   &&r   get_nodeZPath.get_node       {{5!!r   c                r   r   r   r   r   r   get_relationshipZPath.get_relationship   r   r   c                s(    V P                   ^ ,          # )i    r   r   r   r   
first_nodeZPath.first_node   s    {{1~r   c                s(    V P                   R,          # )r    ir   r   r   r   	last_nodeZPath.last_node!   s    {{2r   c                ,    \        V P                  4      # r   )lenr   r   r   r   
edge_countZPath.edge_count$       4;;r   c                r   r   )r    r   r   r   r   nodes_countZPath.nodes_count'   r"   r   c                    \        WP                  4      '       g   \        R 4      hV P                  P	                  V4       \
        V n        V # )zAdd Edge before adding Node)r   r   AssertionErrorr   appendr   )r   noder   r   add_nodeZPath.add_node*   >    $ 0 011 !>??4 r   c                r$   )zAdd Node before adding Edge)r   r   r%   r   r&   r   )r   edger   r   add_edgeZPath.add_edge1   r)   r   c                s    \        V\        4      '       g   R # V P                  4       VP                  4       8H  ;'       d"    V P                  4       VP                  4       8H  # )F)r   r   r	   r
   )r   Zotherr   r   __eq__ZPath.__eq__8   sB    %&&zz|u{{},NN1NNr   c                sP   R pV P                  4       p\        ^ V4       F  pV P                  V4      P                  pVR\	        V4      ,           R,           ,          pV P                  V4      pTVP                  V8X  d-   R\	        \        VP                  4      4      ,           R,           M+R\	        \        VP                  4      4      ,           R,           ,          pK  	  V P                  V4      P                  pVR\	        V4      ,           R,           ,          pVR,          pV# )Z<Z(Z)z-[z]->z<-[z]-Z>)r!   Zranger   ZidZstrr   Zsrc_nodeZint)r   Zresr!   ZiZnode_idr*   s   &     r   __str__ZPath.__str__?   s    __&
q*%AmmA&))G3W%++C((+D==G+ s3tww<((50STWW..5C	 & --
+..sS\!C''s

r   )r   r   r   N)Z__name__Z
__module__Z__qualname__Z__firstlineno__r   Zclassmethodr   r	   r
   r   r   r   r   r!   r#   r(   r+   r,   r-   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r   r      s`        ""  O r   r   N)r*   r   r'   r   r   r   r   r   <module>r.      s     I Ir   