Sha256: b943e47f24ee48a628221e5b3803b7c9b17b687d16f7f277859fb9baad7ade9e
Contents?: true
Size: 1013 Bytes
Versions: 53
Compression:
Stored size: 1013 Bytes
Contents
module Eco::Data::Locations::NodeBase module Serial include Eco::Data::Locations::NodeBase::Treeify include Eco::Data::Locations::Convert # @param item [Eco::Data::Locations::NodeBase] an instance object of a child class. # @return [Proc] the serializer to be used. def serializer(item) raise "Execting a chidren of NodeBase. Given: #{item.class}" unless item.class < Eco::Data::Locations::NodeBase item.serializer end # @paran nodes [Array<NodeBase>] # @return [CSV::Table] ready to dump into a hierarhical **csv** (columns are tree levels) def nodes_to_csv_tree(nodes) hash_tree_to_tree_csv(treeify(nodes)) end # @paran nodes [Array<NodeBase>] # @return [CSV::Table] ready to dump into a nodes list **csv** (rows are nodes; a column holds `parent_id`) def nodes_to_csv_list(nodes) tree = Eco::API::Organization::TagTree.new(treeify(nodes)) Eco::CSV::Table.new(tree.as_nodes_json) end end end
Version data entries
53 entries across 53 versions & 1 rubygems