repo.or.cz
/
alt-git.git
/
search
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
first
·
prev
·
next
read-cache.c: allocate index entries individually
2011-10-26
René Scharfe
re
a
d-cac
h
e
.
c
:
a
l
loca
t
e index e
n
tries i
n
divi
d
ually
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-14
Re
n
é Scharfe
t1304: fall ba
c
k to $USER i
f
$LOGNAME is
n
ot defined
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-10
René Scharf
e
d
iff:
a
d
d
option to show w
h
ole functions
a
s cont
e
xt
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-10
René Sch
a
rf
e
xdiff: f
a
ctor out get_func_lin
e
(
)
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-07
René Scharf
e
pickaxe:
f
acto
r
out pickaxe
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-07
Ren
é
Schar
f
e
p
ic
k
axe: give diff
_
grep the same sign
a
ture as has_changes
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-07
Re
n
é Scharfe
pick
a
xe
:
pass dif
f
_o
p
tions to
c
ontains and ha
s
_changes
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-07
René Scharfe
pic
k
axe:
f
ac
t
or out has_ch
a
ng
e
s
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-07
Ren
é
Scharfe
picka
x
e: plug
r
e
gex/kws le
a
k
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-07
René Scharfe
pickaxe: plu
g
regex leak
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-07
René S
c
harf
e
pi
c
k
a
x
e
:
p
lug d
i
f
f filespec leak with empty ne
e
dle
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
René Scharfe
name-
r
ev:
split usage string
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
Re
n
é Sc
h
ar
f
e
test-ctype: add test for is_pa
t
h
spec_magic
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
René Sc
h
arfe
test-ctype
:
macrofy
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
René S
c
harfe
commit: fac
t
o
r out cl
e
ar_
c
ommit
_
marks_for_object_array
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
R
ené Scharfe
ch
e
ckout: use leak_pend
i
ng
flag
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
Re
n
é Scharf
e
bundle: use leak_pe
n
d
i
ng flag
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
René Scharfe
bisect: use leak_pending fl
a
g
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
R
e
né Scharfe
revi
s
io
n
: add le
a
k_pending flag
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
René Scharf
e
checko
u
t: use add_pe
n
ding_{object,sha1} in o
r
p
h
an
chec
k
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
René Scharfe
revisi
o
n: factor
o
u
t
add_pend
i
ng
_
sha1
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-10-03
René Scha
r
f
e
checkout:
ch
e
ck
for "Previou
s
HEAD"
n
otice in
t
202
0
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-09-28
René S
c
harfe
apply
:
use
O
P
T_N
O
OP
_
NOA
R
G
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-09-28
René Scharfe
r
evert: use O
P
T
_NOOP_
N
OARG
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-09-28
René S
c
harfe
par
s
eopt
:
add OP
T
_NOOP_NOA
R
G
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-09-26
René Scharfe
Revert remo
v
al
of multi-match discard he
u
rist
i
c in
.
.
.
Signed-off-by: René Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-08-01
René
S
c
harfe
grep: long context option
s
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-08-01
R
e
né Sch
a
rfe
g
rep: add opti
o
n to show whole function as cont
e
xt
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-06-06
Re
n
é Sch
a
rfe
grep:
a
dd --he
a
ding
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-06-06
Ren
é
Scharf
e
grep:
add --b
r
eak
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-06-06
R
ené Scharfe
g
r
e
p: fix coloring of h
u
nk mark
s
between files
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-05-26
René Scharfe
t0021-c
o
nversion
.
sh
:
fix NoTerminati
n
g
S
ymbolAtEOF
te
s
t
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-04-27
Re
n
é Scharfe
strbuf
:
clarify
asserti
o
n in strbuf_setlen()
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-04-14
René
Schar
f
e
arch
i
ve: document limitation of tar
.
umask con
f
ig s
e
tting
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-03-20
R
e
né S
c
harfe
grep: read patte
r
ns f
r
om
stdin with -f -
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2011-02-13
René Scharfe
repo-config: add d
e
precation wa
r
ni
n
g
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-12-26
Ren
é
Scharfe
close
f
ile on
e
r
r
or in read_mmf
i
le
(
)
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-11-15
René Scharfe
ve
r
i
f
y-tag
:
docume
n
t
--verbose
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-11-15
René Scharfe
branch: i
m
prove
-
-v
e
rbose descripti
o
n
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-11-15
René Scharfe
archi
v
e: improve --verbose de
s
cription
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-11-15
René Scharfe
a
d
d OPT__FORCE
commit
|
commitdiff
|
tree
2010-11-15
R
ené Sch
a
rf
e
add descr
i
ption parame
t
er to OP
T
__QUIET
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-11-15
René Scharfe
add
d
escript
i
on parameter to OPT__
D
R
Y_
R
U
N
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-11-15
René Sc
h
arfe
a
d
d
de
s
cription par
a
meter to O
P
T
__VERBOSE
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-10-06
René Scharfe
work around
b
uggy S_ISxxx(m
)
implementations
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-09-30
René Scharfe
di
f
f
: a
v
oi
d
repeated scanning while looking f
o
r
funcname
commit
|
commitdiff
|
tree
2010-09-11
René
S
c
harfe
c
ompat
/
ne
d
malloc: don't force
N
DEBU
G
on the rest
o
f git
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-08-09
Ren
é
Scharf
e
prune
:
allo
w
--dr
y
-run for -n and --verbose for -v
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-08-09
René Scharfe
notes: a
l
lo
w
--dry-run for
-
n and --verbo
s
e for -v
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-24
René S
c
harfe
grep: support NUL cha
r
s in search
s
tri
n
gs
for
-F
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-24
René Scharfe
gr
e
p:
u
s
e
RE
G
_STARTEND for a
l
l matching if available
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-24
René
Sch
a
r
f
e
g
r
ep: continue case insensitive fixed
s
tring
s
e
arch
.
.
.
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-24
René Scharfe
grep
:
u
se m
e
mmem() for fix
e
d string s
e
arch
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-24
René Scharfe
grep: --name-onl
y
over bi
n
ary
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-24
Ren
é
Sc
h
a
r
f
e
g
r
ep: --coun
t
over binary
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-24
René
Scharfe
g
rep: grep:
refactor handling of binary mode opti
o
ns
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-24
René Scharf
e
grep:
a
dd
t
est script f
o
r
bin
a
ry file
ha
n
dling
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-20
René Sch
a
r
f
e
Fi
x
checkout of l
a
rge f
i
les to network s
h
ares on Wind
o
ws XP
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-04
René Scharfe
remove ec
b
p
a
rameter
from xdi
_
d
i
f
f_
o
u
tf(
)
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-05-02
René Scharfe
g
it diff too slow for a file
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-03-15
René Scha
r
fe
grep: enable
t
hreading for c
o
ntext line prin
t
ing
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-03-13
Re
n
é Scharfe
for_each
_
recent_reflog_
e
nt(): use strbuf, fix off
s
et
.
.
.
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-03-13
R
en
é
S
c
harfe
b
l
ame: fix
indent of line numbers
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-02-20
René Sc
h
arfe
utf8
.
c: s
p
eculative
l
y
a
s
s
ume utf-8 in st
r
buf_add
_
w
r
apped_text(
)
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-02-20
R
ené Scharfe
utf8
.
c: remove s
t
r
b
u
f
_write()
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-02-20
Re
n
é
Scharfe
utf8
.
c:
re
m
ove prin
t
_spaces()
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-02-20
R
e
né Scharfe
utf8
.
c: remove
p
r
i
n
t_wra
p
ped_text()
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-02-14
R
e
né Scharfe
f
ix minor
m
e
mory leak in g
e
t
_tree_en
t
r
y()
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-02-07
René Scharfe
arc
h
iv
e
: si
m
plify archive format guessing
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-02-06
René S
c
harfe
s
e
tenv(GIT_DIR) clean-
u
p
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2010-02-03
René
S
c
h
arf
e
g
r
e
p: simplify assignment of -
>
fixed
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-12-30
René Scharfe
archive: complain about path spec
s
that don't ma
t
ch
.
.
.
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-12-04
R
ené Sc
h
arfe
a
rchiv
e
: clarify descri
p
tion of path param
e
ter
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-11-23
René
S
c
h
ar
f
e
mer
g
etool--lib
:
simplif
y
g
u
es
s
_merge_
t
oo
l
()
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-11-23
R
ené
Scha
r
fe
strbuf_add_wra
p
ped_t
e
xt(): skip over colo
u
r codes
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-11-23
René
S
charfe
log
--format:
document %w
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-11-23
René Scharfe
s
t
rbuf
_
add_wrapped_text(): fac
t
or ou
t
st
r
b
u
f_add_
i
ndented_text
(
)
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-11-23
René Sc
h
arfe
grep: unset GREP_
O
PTIONS
b
efore spawning ext
e
r
nal grep
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-11-09
Re
n
é Scharfe
lo
g
--f
o
rmat:
don't ignore
%w()
a
t the s
t
a
r
t of fo
r
mat
.
.
.
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-10-23
Re
n
é Scharfe
Im
p
le
m
ent
w
r
ap form
a
t %w() a
s
if it is
a
mode switch
commit
|
commitdiff
|
tree
2009-10-19
René Sc
h
a
rfe
d
esc
r
ibe: loa
d
refnames be
f
ore calling describe()
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-10-09
René Scharfe
Gi
t
arch
i
ve
and tr
a
i
ling
"/"
i
n
prefix
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-08-29
Re
n
é Sch
a
rfe
UI consiste
n
c
y
:
allo
w
--force for where -f means force
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-08-29
René
S
ch
a
r
f
e
updat
e
-serv
e
r
-
info:
make builtin, use pars
e
opt
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-07-03
René S
c
harfe
grep: simplify -p output
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-07-02
René S
c
h
a
rfe
grep
-
p
:
s
u
p
po
r
t user defined regular
e
xpressio
n
s
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-07-02
René Scharfe
g
r
e
p
: add
o
p
tio
n
-p/--
s
how-function
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-07-02
René Scharfe
grep: ha
n
d
l
e pr
e
c
o
ntext lines on
demand
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-07-02
R
ené
Schar
f
e
g
r
ep: pr
i
n
t context hunk ma
r
k
s
between files
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-07-02
René Scha
r
fe
gre
p
: move conte
x
t hunk ma
r
k han
d
ling int
o
s
how_line()
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-07-02
René Scharfe
userdiff: add xdiff
_
c
l
e
ar_
f
ind_f
u
nc(
)
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-06-30
René Scharfe
attr: plug mino
r
memory l
e
a
k
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-06-18
René
Scharfe
upload-ar
c
h
ive
:
fix infinite loop on
C
ygwin
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-06-03
René Scharfe
grep:
fix empty
word-regexp matches
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-06-02
René
Scharfe
grep:
f
ix colourin
g
of m
a
tches with
z
ero length
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-05-23
René Sch
a
rfe
grep
:
f
i
x word-re
g
exp a
t
t
he beginn
i
ng of lines
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-05-21
Re
n
é
S
charfe
grep: fix word-regexp colouring
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-05-21
René Scharfe
grep: make callback functions sta
t
ic
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-05-09
René Scharfe
grep: use parseopt
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
2009-05-09
René Scharfe
g
r
ep:
remove global
var
i
abl
e
b
uiltin_gre
p
Signed-off-by: Rene Scharfe <
rene.scharfe@lsrfire.ath.cx
>
commit
|
commitdiff
|
tree
next