From 5ee6b055e902c10588c1a61ec840b9357911844d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADn=20Nieto?= Date: Thu, 28 Mar 2013 05:39:26 +0100 Subject: [PATCH] tree: don't use a record for tree entry Return the four elements directly --- src/geef_records.hrl | 2 -- src/geef_tree.erl | 7 ++++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/geef_records.hrl b/src/geef_records.hrl index 99b313f..a8eb869 100644 --- a/src/geef_records.hrl +++ b/src/geef_records.hrl @@ -3,11 +3,9 @@ -record(odb, {handle}). -record(oid, {oid}). -record(object, {type :: atom(), handle}). --record(tree_entry, {mode, type :: atom(), id :: oid(), name :: binary()}). -type ref() :: #ref{}. -type repo() :: #repo{}. -type odb() :: #odb{}. -type oid() :: #oid{}. -type object() :: #object{}. --type tree_entry() :: #tree_entry{}. diff --git a/src/geef_tree.erl b/src/geef_tree.erl index 21758f7..23c2761 100644 --- a/src/geef_tree.erl +++ b/src/geef_tree.erl @@ -10,8 +10,8 @@ bypath(#object{type=tree,handle=Handle}, Path) -> case geef:tree_bypath(Handle, Path) of - {ok, Mode, Type, Id, Name} -> - {ok, #tree_entry{mode=Mode, type=Type, id=geef_oid:parse(Id), name=Name}}; + {ok, Mode, Type, Oid, Name} -> + {ok, Mode, Type, #oid{oid=Oid}, Name}; Other -> Other end. @@ -26,6 +26,7 @@ id(Obj = #object{type=tree}) -> bypath_test() -> {ok, Repo} = geef_repo:open(".."), {ok, Tree} = geef_object:lookup(Repo, geef_oid:parse("395e1c39cb203640b78da8458a42afdb92bef7aa")), - {ok, #tree_entry{type=blob, name= <<"README.md">>}} = geef_tree:bypath(Tree, "README.md"). + Id = geef_oid:parse("80d5c15a040c93a4f98f4496a05ebf30cdd58650"), + {ok, 8#100644, blob, Id, <<"README.md">>} = geef_tree:bypath(Tree, "README.md"). -endif.