aboutsummaryrefslogtreecommitdiff
path: root/lib/exgit/packfile.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/exgit/packfile.ex')
-rw-r--r--lib/exgit/packfile.ex13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/exgit/packfile.ex b/lib/exgit/packfile.ex
index 4fda345..3823259 100644
--- a/lib/exgit/packfile.ex
+++ b/lib/exgit/packfile.ex
@@ -2,4 +2,17 @@ defmodule Exgit.Packfile do
@moduledoc """
Module for parsing Git Packfiles
"""
+
+ @spec parse_header(binary) :: {:pack, 2|3, integer}
+ def parse_header(packfile) do
+ <<"PACK" :: utf8, 2 :: size(32), n :: size(32)>> <> rest = packfile
+ {:pack, 2, n, rest}
+ end
+
+ @spec parse_objects(integer, binary) :: [{:commit|:blob|:tree,
+ binary,
+ binary}]
+ def parse_objects(n, pack) do
+ nil
+ end
end