hgext/win32text.py
author Bryan O'Sullivan <bos@serpentine.com>
Tue, 24 Apr 2007 11:46:15 -0700
changeset 4373 abeb3edb2b4e
parent 1300 e58b1c9a0dec
child 4858 30762680fcd2
permissions -rw-r--r--
dirstate: make parents() faster. This allows localrepository.status() to avoid reading all but the first 40 bytes of the dirstate in the common case of running "hg status".

import mercurial.util

def dumbdecode(s, cmd):
    return s.replace('\n', '\r\n')

def dumbencode(s, cmd):
    return s.replace('\r\n', '\n')

def clevertest(s, cmd):
    if '\0' in s: return False
    return True

def cleverdecode(s, cmd):
    if clevertest(s, cmd):
        return dumbdecode(s, cmd)
    return s

def cleverencode(s, cmd):
    if clevertest(s, cmd):
        return dumbencode(s, cmd)
    return s

mercurial.util.filtertable.update({
    'dumbdecode:': dumbdecode,
    'dumbencode:': dumbencode,
    'cleverdecode:': cleverdecode,
    'cleverencode:': cleverencode,
    })