Coverage Report

Created: 2024-09-08 06:23

/src/git/hex-ll.h
Line
Count
Source (jump to first uncovered line)
1
#ifndef HEX_LL_H
2
#define HEX_LL_H
3
4
extern const signed char hexval_table[256];
5
static inline unsigned int hexval(unsigned char c)
6
0
{
7
0
  return hexval_table[c];
8
0
}
Unexecuted instantiation: am.c:hexval
Unexecuted instantiation: bisect.c:hexval
Unexecuted instantiation: blame.c:hexval
Unexecuted instantiation: cat-file.c:hexval
Unexecuted instantiation: checkout.c:hexval
Unexecuted instantiation: clone.c:hexval
Unexecuted instantiation: commit-graph.c:hexval
Unexecuted instantiation: commit-tree.c:hexval
Unexecuted instantiation: describe.c:hexval
Unexecuted instantiation: diff-tree.c:hexval
Unexecuted instantiation: difftool.c:hexval
Unexecuted instantiation: fast-export.c:hexval
Unexecuted instantiation: fast-import.c:hexval
Unexecuted instantiation: fetch-pack.c:hexval
Unexecuted instantiation: fetch.c:hexval
Unexecuted instantiation: fsck.c:hexval
Unexecuted instantiation: gc.c:hexval
Unexecuted instantiation: grep.c:hexval
Unexecuted instantiation: hash-object.c:hexval
Unexecuted instantiation: index-pack.c:hexval
Unexecuted instantiation: log.c:hexval
Unexecuted instantiation: ls-files.c:hexval
Unexecuted instantiation: ls-remote.c:hexval
Unexecuted instantiation: ls-tree.c:hexval
Unexecuted instantiation: merge-base.c:hexval
Unexecuted instantiation: merge-file.c:hexval
Unexecuted instantiation: merge-index.c:hexval
Unexecuted instantiation: merge-tree.c:hexval
Unexecuted instantiation: merge.c:hexval
Unexecuted instantiation: mktag.c:hexval
Unexecuted instantiation: mktree.c:hexval
Unexecuted instantiation: name-rev.c:hexval
Unexecuted instantiation: notes.c:hexval
Unexecuted instantiation: pack-objects.c:hexval
Unexecuted instantiation: pack-redundant.c:hexval
Unexecuted instantiation: patch-id.c:hexval
Unexecuted instantiation: prune.c:hexval
Unexecuted instantiation: pull.c:hexval
Unexecuted instantiation: read-tree.c:hexval
Unexecuted instantiation: rebase.c:hexval
Unexecuted instantiation: receive-pack.c:hexval
Unexecuted instantiation: repack.c:hexval
Unexecuted instantiation: replace.c:hexval
Unexecuted instantiation: replay.c:hexval
Unexecuted instantiation: reset.c:hexval
Unexecuted instantiation: rev-list.c:hexval
Unexecuted instantiation: rev-parse.c:hexval
Unexecuted instantiation: send-pack.c:hexval
Unexecuted instantiation: show-branch.c:hexval
Unexecuted instantiation: show-index.c:hexval
Unexecuted instantiation: show-ref.c:hexval
Unexecuted instantiation: stash.c:hexval
Unexecuted instantiation: submodule--helper.c:hexval
Unexecuted instantiation: tag.c:hexval
Unexecuted instantiation: unpack-file.c:hexval
Unexecuted instantiation: unpack-objects.c:hexval
Unexecuted instantiation: update-index.c:hexval
Unexecuted instantiation: worktree.c:hexval
Unexecuted instantiation: write-tree.c:hexval
Unexecuted instantiation: add-interactive.c:hexval
Unexecuted instantiation: apply.c:hexval
Unexecuted instantiation: archive.c:hexval
Unexecuted instantiation: branch.c:hexval
Unexecuted instantiation: bulk-checkin.c:hexval
Unexecuted instantiation: bundle.c:hexval
Unexecuted instantiation: cache-tree.c:hexval
Unexecuted instantiation: color.c:hexval
Unexecuted instantiation: combine-diff.c:hexval
Unexecuted instantiation: commit-reach.c:hexval
Unexecuted instantiation: commit.c:hexval
Unexecuted instantiation: connect.c:hexval
Unexecuted instantiation: connected.c:hexval
Unexecuted instantiation: convert.c:hexval
Unexecuted instantiation: delta-islands.c:hexval
Unexecuted instantiation: diagnose.c:hexval
Unexecuted instantiation: diff-lib.c:hexval
Unexecuted instantiation: diff.c:hexval
Unexecuted instantiation: dir.c:hexval
Unexecuted instantiation: entry.c:hexval
Unexecuted instantiation: fmt-merge-msg.c:hexval
Unexecuted instantiation: hex.c:hexval
Unexecuted instantiation: hex-ll.c:hexval
Unexecuted instantiation: line-log.c:hexval
Unexecuted instantiation: list-objects.c:hexval
Unexecuted instantiation: log-tree.c:hexval
Unexecuted instantiation: mailinfo.c:hexval
Unexecuted instantiation: merge-ort.c:hexval
Unexecuted instantiation: merge-recursive.c:hexval
Unexecuted instantiation: midx.c:hexval
Unexecuted instantiation: midx-write.c:hexval
Unexecuted instantiation: notes-merge.c:hexval
Unexecuted instantiation: object-file-convert.c:hexval
Unexecuted instantiation: object-file.c:hexval
Unexecuted instantiation: object-name.c:hexval
Unexecuted instantiation: object.c:hexval
Unexecuted instantiation: oidset.c:hexval
Unexecuted instantiation: pack-bitmap-write.c:hexval
Unexecuted instantiation: pack-bitmap.c:hexval
Unexecuted instantiation: pack-check.c:hexval
Unexecuted instantiation: pack-write.c:hexval
Unexecuted instantiation: packfile.c:hexval
Unexecuted instantiation: parallel-checkout.c:hexval
Unexecuted instantiation: patch-ids.c:hexval
Unexecuted instantiation: pkt-line.c:hexval
Unexecuted instantiation: pretty.c:hexval
Unexecuted instantiation: promisor-remote.c:hexval
Unexecuted instantiation: pseudo-merge.c:hexval
Unexecuted instantiation: reachable.c:hexval
Unexecuted instantiation: read-cache.c:hexval
Unexecuted instantiation: ref-filter.c:hexval
Unexecuted instantiation: refs.c:hexval
Unexecuted instantiation: debug.c:hexval
Unexecuted instantiation: files-backend.c:hexval
Unexecuted instantiation: reftable-backend.c:hexval
Unexecuted instantiation: packed-backend.c:hexval
Unexecuted instantiation: refspec.c:hexval
Unexecuted instantiation: remote.c:hexval
Unexecuted instantiation: replace-object.c:hexval
Unexecuted instantiation: rerere.c:hexval
Unexecuted instantiation: revision.c:hexval
Unexecuted instantiation: sequencer.c:hexval
Unexecuted instantiation: server-info.c:hexval
Unexecuted instantiation: setup.c:hexval
Unexecuted instantiation: shallow.c:hexval
Unexecuted instantiation: strbuf.c:hexval
Unexecuted instantiation: submodule-config.c:hexval
Unexecuted instantiation: submodule.c:hexval
Unexecuted instantiation: tr2_sid.c:hexval
Unexecuted instantiation: transport-helper.c:hexval
Unexecuted instantiation: transport.c:hexval
Unexecuted instantiation: tree-walk.c:hexval
Unexecuted instantiation: tree.c:hexval
Unexecuted instantiation: unpack-trees.c:hexval
Unexecuted instantiation: upload-pack.c:hexval
Unexecuted instantiation: url.c:hexval
Unexecuted instantiation: urlmatch.c:hexval
Unexecuted instantiation: wt-status.c:hexval
Unexecuted instantiation: xdiff-interface.c:hexval
Unexecuted instantiation: sha1dc_git.c:hexval
Unexecuted instantiation: archive-tar.c:hexval
Unexecuted instantiation: archive-zip.c:hexval
Unexecuted instantiation: list-objects-filter.c:hexval
Unexecuted instantiation: loose.c:hexval
Unexecuted instantiation: ls-refs.c:hexval
Unexecuted instantiation: match-trees.c:hexval
Unexecuted instantiation: skipping.c:hexval
Unexecuted instantiation: protocol-caps.c:hexval
9
10
/*
11
 * Convert two consecutive hexadecimal digits into a char.  Return a
12
 * negative value on error.  Don't run over the end of short strings.
13
 */
14
static inline int hex2chr(const char *s)
15
0
{
16
0
  unsigned int val = hexval(s[0]);
17
0
  return (val & ~0xf) ? val : (val << 4) | hexval(s[1]);
18
0
}
Unexecuted instantiation: am.c:hex2chr
Unexecuted instantiation: bisect.c:hex2chr
Unexecuted instantiation: blame.c:hex2chr
Unexecuted instantiation: cat-file.c:hex2chr
Unexecuted instantiation: checkout.c:hex2chr
Unexecuted instantiation: clone.c:hex2chr
Unexecuted instantiation: commit-graph.c:hex2chr
Unexecuted instantiation: commit-tree.c:hex2chr
Unexecuted instantiation: describe.c:hex2chr
Unexecuted instantiation: diff-tree.c:hex2chr
Unexecuted instantiation: difftool.c:hex2chr
Unexecuted instantiation: fast-export.c:hex2chr
Unexecuted instantiation: fast-import.c:hex2chr
Unexecuted instantiation: fetch-pack.c:hex2chr
Unexecuted instantiation: fetch.c:hex2chr
Unexecuted instantiation: fsck.c:hex2chr
Unexecuted instantiation: gc.c:hex2chr
Unexecuted instantiation: grep.c:hex2chr
Unexecuted instantiation: hash-object.c:hex2chr
Unexecuted instantiation: index-pack.c:hex2chr
Unexecuted instantiation: log.c:hex2chr
Unexecuted instantiation: ls-files.c:hex2chr
Unexecuted instantiation: ls-remote.c:hex2chr
Unexecuted instantiation: ls-tree.c:hex2chr
Unexecuted instantiation: merge-base.c:hex2chr
Unexecuted instantiation: merge-file.c:hex2chr
Unexecuted instantiation: merge-index.c:hex2chr
Unexecuted instantiation: merge-tree.c:hex2chr
Unexecuted instantiation: merge.c:hex2chr
Unexecuted instantiation: mktag.c:hex2chr
Unexecuted instantiation: mktree.c:hex2chr
Unexecuted instantiation: name-rev.c:hex2chr
Unexecuted instantiation: notes.c:hex2chr
Unexecuted instantiation: pack-objects.c:hex2chr
Unexecuted instantiation: pack-redundant.c:hex2chr
Unexecuted instantiation: patch-id.c:hex2chr
Unexecuted instantiation: prune.c:hex2chr
Unexecuted instantiation: pull.c:hex2chr
Unexecuted instantiation: read-tree.c:hex2chr
Unexecuted instantiation: rebase.c:hex2chr
Unexecuted instantiation: receive-pack.c:hex2chr
Unexecuted instantiation: repack.c:hex2chr
Unexecuted instantiation: replace.c:hex2chr
Unexecuted instantiation: replay.c:hex2chr
Unexecuted instantiation: reset.c:hex2chr
Unexecuted instantiation: rev-list.c:hex2chr
Unexecuted instantiation: rev-parse.c:hex2chr
Unexecuted instantiation: send-pack.c:hex2chr
Unexecuted instantiation: show-branch.c:hex2chr
Unexecuted instantiation: show-index.c:hex2chr
Unexecuted instantiation: show-ref.c:hex2chr
Unexecuted instantiation: stash.c:hex2chr
Unexecuted instantiation: submodule--helper.c:hex2chr
Unexecuted instantiation: tag.c:hex2chr
Unexecuted instantiation: unpack-file.c:hex2chr
Unexecuted instantiation: unpack-objects.c:hex2chr
Unexecuted instantiation: update-index.c:hex2chr
Unexecuted instantiation: worktree.c:hex2chr
Unexecuted instantiation: write-tree.c:hex2chr
Unexecuted instantiation: add-interactive.c:hex2chr
Unexecuted instantiation: apply.c:hex2chr
Unexecuted instantiation: archive.c:hex2chr
Unexecuted instantiation: branch.c:hex2chr
Unexecuted instantiation: bulk-checkin.c:hex2chr
Unexecuted instantiation: bundle.c:hex2chr
Unexecuted instantiation: cache-tree.c:hex2chr
Unexecuted instantiation: color.c:hex2chr
Unexecuted instantiation: combine-diff.c:hex2chr
Unexecuted instantiation: commit-reach.c:hex2chr
Unexecuted instantiation: commit.c:hex2chr
Unexecuted instantiation: connect.c:hex2chr
Unexecuted instantiation: connected.c:hex2chr
Unexecuted instantiation: convert.c:hex2chr
Unexecuted instantiation: delta-islands.c:hex2chr
Unexecuted instantiation: diagnose.c:hex2chr
Unexecuted instantiation: diff-lib.c:hex2chr
Unexecuted instantiation: diff.c:hex2chr
Unexecuted instantiation: dir.c:hex2chr
Unexecuted instantiation: entry.c:hex2chr
Unexecuted instantiation: fmt-merge-msg.c:hex2chr
Unexecuted instantiation: hex.c:hex2chr
Unexecuted instantiation: hex-ll.c:hex2chr
Unexecuted instantiation: line-log.c:hex2chr
Unexecuted instantiation: list-objects.c:hex2chr
Unexecuted instantiation: log-tree.c:hex2chr
Unexecuted instantiation: mailinfo.c:hex2chr
Unexecuted instantiation: merge-ort.c:hex2chr
Unexecuted instantiation: merge-recursive.c:hex2chr
Unexecuted instantiation: midx.c:hex2chr
Unexecuted instantiation: midx-write.c:hex2chr
Unexecuted instantiation: notes-merge.c:hex2chr
Unexecuted instantiation: object-file-convert.c:hex2chr
Unexecuted instantiation: object-file.c:hex2chr
Unexecuted instantiation: object-name.c:hex2chr
Unexecuted instantiation: object.c:hex2chr
Unexecuted instantiation: oidset.c:hex2chr
Unexecuted instantiation: pack-bitmap-write.c:hex2chr
Unexecuted instantiation: pack-bitmap.c:hex2chr
Unexecuted instantiation: pack-check.c:hex2chr
Unexecuted instantiation: pack-write.c:hex2chr
Unexecuted instantiation: packfile.c:hex2chr
Unexecuted instantiation: parallel-checkout.c:hex2chr
Unexecuted instantiation: patch-ids.c:hex2chr
Unexecuted instantiation: pkt-line.c:hex2chr
Unexecuted instantiation: pretty.c:hex2chr
Unexecuted instantiation: promisor-remote.c:hex2chr
Unexecuted instantiation: pseudo-merge.c:hex2chr
Unexecuted instantiation: reachable.c:hex2chr
Unexecuted instantiation: read-cache.c:hex2chr
Unexecuted instantiation: ref-filter.c:hex2chr
Unexecuted instantiation: refs.c:hex2chr
Unexecuted instantiation: debug.c:hex2chr
Unexecuted instantiation: files-backend.c:hex2chr
Unexecuted instantiation: reftable-backend.c:hex2chr
Unexecuted instantiation: packed-backend.c:hex2chr
Unexecuted instantiation: refspec.c:hex2chr
Unexecuted instantiation: remote.c:hex2chr
Unexecuted instantiation: replace-object.c:hex2chr
Unexecuted instantiation: rerere.c:hex2chr
Unexecuted instantiation: revision.c:hex2chr
Unexecuted instantiation: sequencer.c:hex2chr
Unexecuted instantiation: server-info.c:hex2chr
Unexecuted instantiation: setup.c:hex2chr
Unexecuted instantiation: shallow.c:hex2chr
Unexecuted instantiation: strbuf.c:hex2chr
Unexecuted instantiation: submodule-config.c:hex2chr
Unexecuted instantiation: submodule.c:hex2chr
Unexecuted instantiation: tr2_sid.c:hex2chr
Unexecuted instantiation: transport-helper.c:hex2chr
Unexecuted instantiation: transport.c:hex2chr
Unexecuted instantiation: tree-walk.c:hex2chr
Unexecuted instantiation: tree.c:hex2chr
Unexecuted instantiation: unpack-trees.c:hex2chr
Unexecuted instantiation: upload-pack.c:hex2chr
Unexecuted instantiation: url.c:hex2chr
Unexecuted instantiation: urlmatch.c:hex2chr
Unexecuted instantiation: wt-status.c:hex2chr
Unexecuted instantiation: xdiff-interface.c:hex2chr
Unexecuted instantiation: sha1dc_git.c:hex2chr
Unexecuted instantiation: archive-tar.c:hex2chr
Unexecuted instantiation: archive-zip.c:hex2chr
Unexecuted instantiation: list-objects-filter.c:hex2chr
Unexecuted instantiation: loose.c:hex2chr
Unexecuted instantiation: ls-refs.c:hex2chr
Unexecuted instantiation: match-trees.c:hex2chr
Unexecuted instantiation: skipping.c:hex2chr
Unexecuted instantiation: protocol-caps.c:hex2chr
19
20
/*
21
 * Read `len` pairs of hexadecimal digits from `hex` and write the
22
 * values to `binary` as `len` bytes. Return 0 on success, or -1 if
23
 * the input does not consist of hex digits).
24
 */
25
int hex_to_bytes(unsigned char *binary, const char *hex, size_t len);
26
27
#endif