diff options
author | P. J. McDermott <pjm@nac.net> | 2012-08-12 16:38:48 (EDT) |
---|---|---|
committer | P. J. McDermott <pjm@nac.net> | 2012-08-12 16:38:48 (EDT) |
commit | 8f4cc803a74728b07532a6c2ff2788b63b012d3c (patch) | |
tree | 2b7f018fead897b18a6ee94715519b942f71a5ef /scripts/MarkdownBook/HTMLTree.pm | |
parent | a5d1ce13172e8d91d24ede48f28cc269e3d1aa23 (diff) | |
parent | 37555e439fc99e0f14fa9d6c65c3a9db2de1b9da (diff) |
Merge branch 'markdown-book' of git://git.os.pehjota.net/users/pehjota/doc/policies
Diffstat (limited to 'scripts/MarkdownBook/HTMLTree.pm')
-rw-r--r-- | scripts/MarkdownBook/HTMLTree.pm | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/scripts/MarkdownBook/HTMLTree.pm b/scripts/MarkdownBook/HTMLTree.pm new file mode 100644 index 0000000..e01bab0 --- /dev/null +++ b/scripts/MarkdownBook/HTMLTree.pm @@ -0,0 +1,44 @@ +# Copyright (C) 2012 Patrick "P. J." McDermott +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +use strict; +use warnings; + +use HTML::Element; + +package MarkdownBook::HTMLTree; + +sub find_elements_by_tag_names +{ + my ($elem, @tagnames) = @_; + + my @list = $elem->content_list(); + my $tag; + my @retlist = (); + + foreach (@list) { + if (ref($_) ne 'HTML::Element') { + next; + } + $tag = $_->tag(); + if (grep($_ eq $tag, @tagnames)) { + push(@retlist, $_); + } + } + + return @retlist; +} + +1; |