The pcase implementation: https://www.gnu.org/software/emacs/manual/html_node/elisp/pcase-Macro.html And then the destructuring methods: https://www.gnu.org/software/emacs/manual/html_node/elisp/Destructuring-with-pcase-Patterns.html