class SafariBookmarksParser::Services::FindEmptyFolders

Public Class Methods

call(root_folder:) click to toggle source
# File lib/safari_bookmarks_parser/services/find_empty_folders.rb, line 7
def call(root_folder:)
  results = []

  traverse(root_folder, results)

  results
end
traverse(node, results) click to toggle source
# File lib/safari_bookmarks_parser/services/find_empty_folders.rb, line 15
def traverse(node, results)
  case node
  when BookmarkFolder
    if node.children.empty?
      results << node
    else
      node.children.each do |child|
        traverse(child, results)
      end
    end
  end
end