diff options
author | Jed Barber <jjbarber@y7mail.com> | 2020-05-22 17:42:48 +1000 |
---|---|---|
committer | Jed Barber <jjbarber@y7mail.com> | 2020-05-22 17:42:48 +1000 |
commit | 5bb4bfd85fb558380a8b06ac77d0e5b27aee1feb (patch) | |
tree | ad81f63bf4d1cb727e3449fe71c9c0651a6cd808 /src | |
parent | 82a42674ba64c6386152a5910fd7345a92b135e8 (diff) |
Contains functions now allows Extended_Node_ID_Type input
Diffstat (limited to 'src')
-rw-r--r-- | src/directed_graphs.adb | 18 | ||||
-rw-r--r-- | src/directed_graphs.ads | 8 |
2 files changed, 16 insertions, 10 deletions
diff --git a/src/directed_graphs.adb b/src/directed_graphs.adb index c690d87..12916d1 100644 --- a/src/directed_graphs.adb +++ b/src/directed_graphs.adb @@ -370,18 +370,24 @@ package body Directed_Graphs is function Contains (Container : in Graph; - Node : in Node_ID_Type) + Node : in Extended_Node_ID_Type) return Boolean is begin + if Node = No_Node then + return False; + end if; return Container.Connections.Contains (Node); end Contains; function Contains (Container : in Graph; - Node : in Node_ID_Type; + Node : in Extended_Node_ID_Type; Label : in Node_Label_Type) return Boolean is begin + if Node = No_Node then + return False; + end if; return Container.Contains (Node) and then Container.Node_Labels.Contains (Node) and then Container.Node_Labels.Constant_Reference (Node) = Label; @@ -432,10 +438,10 @@ package body Directed_Graphs is function Contains_In_Subgraph (Position : in Cursor; - Node : in Node_ID_Type) + Node : in Extended_Node_ID_Type) return Boolean is begin - if Position.Container = null then + if Position.Container = null or Node = No_Node then return False; end if; for C in Position.Container.Iterate_Subgraph (Position) loop @@ -448,11 +454,11 @@ package body Directed_Graphs is function Contains_In_Subgraph (Position : in Cursor; - Node : in Node_ID_Type; + Node : in Extended_Node_ID_Type; Label : in Node_Label_Type) return Boolean is begin - if Position.Container = null then + if Position.Container = null or Node = No_Node then return False; end if; return Contains_In_Subgraph (Position, Node) and then diff --git a/src/directed_graphs.ads b/src/directed_graphs.ads index d89b647..d31b7c7 100644 --- a/src/directed_graphs.ads +++ b/src/directed_graphs.ads @@ -582,12 +582,12 @@ package Directed_Graphs is function Contains (Container : in Graph; - Node : in Node_ID_Type) + Node : in Extended_Node_ID_Type) return Boolean; function Contains (Container : in Graph; - Node : in Node_ID_Type; + Node : in Extended_Node_ID_Type; Label : in Node_Label_Type) return Boolean; @@ -619,12 +619,12 @@ package Directed_Graphs is function Contains_In_Subgraph (Position : in Cursor; - Node : in Node_ID_Type) + Node : in Extended_Node_ID_Type) return Boolean; function Contains_In_Subgraph (Position : in Cursor; - Node : in Node_ID_Type; + Node : in Extended_Node_ID_Type; Label : in Node_Label_Type) return Boolean; |