Files
2023-01-12 20:55:11 +01:00

23 lines
580 B
Elixir

defmodule Outlook.InternalTree.Basic do
alias Outlook.InternalTree.InternalNode
alias Outlook.InternalTree.TranslationUnit
def clean_eph([%TranslationUnit{} = node | rest]) do
[ %TranslationUnit{node | eph: %{}} | clean_eph(rest) ]
end
def clean_eph([%InternalNode{type: :element} = node | rest]) do
[ %InternalNode{node |
eph: %{},
content: clean_eph(node.content)}
| clean_eph(rest) ]
end
def clean_eph([%{type: _} = node | rest]) do
[ %InternalNode{node | eph: %{}} | clean_eph(rest) ]
end
def clean_eph([]), do: []
end