| 29 | | keys_values(Pairs, Keys, Values) :- |
| 30 | | ( nonvar(Pairs) -> |
| 31 | | pairs_to_keys_values(Pairs, Keys, Values) |
| 32 | | ; nonvar(Keys), nonvar(Values) -> |
| 33 | | keys_values_to_pairs(Keys, Values, Pairs) |
| 34 | | ). |
| | 29 | keys_values(Pairs, Keys, Values) :- |
| | 30 | ( nonvar(Pairs) -> |
| | 31 | pairs_to_keys_values(Pairs, Keys, Values) |
| | 32 | ; nonvar(Keys), nonvar(Values) -> |
| | 33 | keys_values_to_pairs(Keys, Values, Pairs) |
| | 34 | ). |
| 36 | | pairs_to_keys_values([], [], []). |
| 37 | | pairs_to_keys_values([Key-Value| Pairs], [Key| Keys], [Value| Values]) :- |
| 38 | | pairs_to_keys_values(Pairs, Keys, Values). |
| | 36 | pairs_to_keys_values([], [], []). |
| | 37 | pairs_to_keys_values([Key-Value| Pairs], [Key| Keys], [Value| Values]) :- |
| | 38 | pairs_to_keys_values(Pairs, Keys, Values). |
| 40 | | keys_values_to_pairs([], [], []). |
| 41 | | keys_values_to_pairs([Key| Keys], [Value| Values], [Key-Value| Pairs]) :- |
| 42 | | keys_values_to_pairs(Keys, Values, Pairs). |
| | 40 | keys_values_to_pairs([], [], []). |
| | 41 | keys_values_to_pairs([Key| Keys], [Value| Values], [Key-Value| Pairs]) :- |
| | 42 | keys_values_to_pairs(Keys, Values, Pairs). |