summaryrefslogtreecommitdiffstats
path: root/lib/ansible/plugins/filter/symmetric_difference.yml
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ansible/plugins/filter/symmetric_difference.yml')
-rw-r--r--lib/ansible/plugins/filter/symmetric_difference.yml35
1 files changed, 35 insertions, 0 deletions
diff --git a/lib/ansible/plugins/filter/symmetric_difference.yml b/lib/ansible/plugins/filter/symmetric_difference.yml
new file mode 100644
index 0000000..de4f3c6
--- /dev/null
+++ b/lib/ansible/plugins/filter/symmetric_difference.yml
@@ -0,0 +1,35 @@
+DOCUMENTATION:
+ name: symmetric_difference
+ author: Brian Coca (@bcoca)
+ version_added: "1.4"
+ short_description: different items from two lists
+ description:
+ - Provide a unique list of all the elements unique to each list.
+ options:
+ _input:
+ description: A list.
+ type: list
+ required: true
+ _second_list:
+ description: A list.
+ type: list
+ required: true
+ seealso:
+ - plugin_type: filter
+ plugin: ansible.builtin.difference
+ - plugin_type: filter
+ plugin: ansible.builtin.intersect
+ - plugin_type: filter
+ plugin: ansible.builtin.union
+ - plugin_type: filter
+ plugin: ansible.builtin.unique
+EXAMPLES: |
+ # return the elements of list1 not in list2 and the elements in list2 not in list1
+ # list1: [1, 2, 5, 1, 3, 4, 10]
+ # list2: [1, 2, 3, 4, 5, 11, 99]
+ {{ list1 | symmetric_difference(list2) }}
+ # => [10, 11, 99]
+RETURN:
+ _value:
+ description: A unique list of the elements from two lists that are unique to each one.
+ type: list