mercurial/node.py
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
Sat, 10 Mar 2007 23:01:00 -0300
changeset 4193 9e3121017fb2
parent 3578 3b4e00cba57a
child 3886 abaee83ce0a6
permissions -rw-r--r--
Optimize return value of util._matcher for common command line case This will trigger every time somebody runs something like "hg diff" or "hg status" without any arguments. The important part here is returning util.always as the match function, which is a much simpler (and faster) function than the usual return value, and allows other code to just skip the filtering if it knows all files will match.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     1
"""
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     2
node.py - basic nodeid manipulation for mercurial
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     3
2858
345bac2bc4ec update copyrights.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2470
diff changeset
     4
Copyright 2005, 2006 Matt Mackall <mpm@selenic.com>
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     5
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     6
This software may be used and distributed according to the terms
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     7
of the GNU General Public License, incorporated herein by reference.
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     8
"""
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     9
2470
fe1689273f84 use demandload more.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1541
diff changeset
    10
from demandload import demandload
fe1689273f84 use demandload more.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1541
diff changeset
    11
demandload(globals(), "binascii")
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    12
3578
3b4e00cba57a Define and use nullrev (revision of nullid) instead of -1.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2858
diff changeset
    13
nullrev = -1
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    14
nullid = "\0" * 20
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    15
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    16
def hex(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    17
    return binascii.hexlify(node)
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    18
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    19
def bin(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    20
    return binascii.unhexlify(node)
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    21
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    22
def short(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    23
    return hex(node[:6])