Esempio n. 1
0
 def test_preallocate(self):
     from __pypy__.builders import StringBuilder
     b = StringBuilder(10)
     b.append("abc")
     b.append("123")
     s = b.build()
     assert s == "abc123"
 def test_preallocate(self):
     from __pypy__.builders import StringBuilder
     b = StringBuilder(10)
     b.append("abc")
     b.append("123")
     s = b.build()
     assert s == "abc123"
Esempio n. 3
0
 def test_append_slice(self):
     from __pypy__.builders import StringBuilder
     b = StringBuilder()
     b.append_slice("abcdefgh", 2, 5)
     raises(ValueError, b.append_slice, "1", 2, 1)
     s = b.build()
     assert s == "cde"
     raises(ValueError, b.append_slice, "abc", 1, 2)
Esempio n. 4
0
    class OStringStream(object):
        def __init__(self):
            self.__b = StringBuilder()

        def write(self, s):
            self.__b.append(s)

        def getvalue(self):
            return self.__b.build()
Esempio n. 5
0
 class StringIO(object):
     def __init__(self, s=b''):
         if s:
             self.builder = StringBuilder(len(s))
             self.builder.append(s)
         else:
             self.builder = StringBuilder()
     def write(self, s):
         self.builder.append(s)
     def getvalue(self):
         return self.builder.build()
Esempio n. 6
0
class StringOrUnicodeBuilder(object):
    def __init__(self):
        self._builder = StringBuilder()
    def append(self, string):
        try:
            self._builder.append(string)
        except UnicodeEncodeError:
            ub = UnicodeBuilder()
            ub.append(self._builder.build())
            self._builder = ub
            ub.append(string)
    def build(self):
        return self._builder.build()
Esempio n. 7
0
class StringOrUnicodeBuilder(object):
    def __init__(self):
        self._builder = StringBuilder()
    def append(self, string):
        if (isinstance(string, unicode) and
                type(self._builder) is StringBuilder):
            ub = UnicodeBuilder()
            ub.append(self._builder.build())
            self._builder = ub
            self.append = ub.append   # shortcut only
        self._builder.append(string)
    def build(self):
        return self._builder.build()
Esempio n. 8
0
    class StringIO(object):
        def __init__(self, s=b''):
            if s:
                self.builder = StringBuilder(len(s))
                self.builder.append(s)
            else:
                self.builder = StringBuilder()

        def write(self, s):
            self.builder.append(s)

        def getvalue(self):
            return self.builder.build()
Esempio n. 9
0
def test(chopcount, chopsize):
    chop = '*' * chopsize

    n = chopcount * chopsize
    sb = StringBuilder(n)

    i = 0
    while i < chopcount:
        sb.append(chop)
        i += 1

    s = sb.build()
    assert (len(s) == n)
Esempio n. 10
0
def test(chopcount, chopsize):
   chop = '*' * chopsize

   n = chopcount * chopsize
   sb = StringBuilder(n)

   i = 0
   while i < chopcount:
      sb.append(chop)
      i += 1

   s = sb.build()
   assert(len(s) == n)
Esempio n. 11
0
class PyPyStringBuilderWriter(BaseJSONWriter):
    def __init__(self):
        super(PyPyStringBuilderWriter, self).__init__()
        self._data = StringBuilder()

    @classmethod
    def is_available(cls):
        return StringBuilder is not None

    def _write(self, s):
        self._data.append(s)

    def build(self):
        return self._data.build()
Esempio n. 12
0
class StringOrUnicodeBuilder(object):
    def __init__(self):
        self._builder = StringBuilder()

    def append(self, string):
        try:
            self._builder.append(string)
        except UnicodeEncodeError:
            ub = UnicodeBuilder()
            ub.append(self._builder.build())
            self._builder = ub
            ub.append(string)

    def build(self):
        return self._builder.build()
Esempio n. 13
0
   def process(self, data):
      dlen = len(data)
      r = StringBuilder(dlen)

      i = 0
      k = self.ptr
      m = self.msk
      while i < dlen:
#         r.append(chr(ord(data[i]) ^ self.msk[k & 3]))
         r.append(chr(ord(data[i]) ^ ord(m[k & 3])))
         k += 1
         i += 1

      self.ptr += dlen
      return r.build()
Esempio n. 14
0
    def encode(self, o):
        """Return a JSON string representation of a Python data structure.

        >>> from json.encoder import JSONEncoder
        >>> JSONEncoder().encode({"foo": ["bar", "baz"]})
        '{"foo": ["bar", "baz"]}'

        """
        if self.check_circular:
            markers = {}
        else:
            markers = None
        builder = StringBuilder()
        self.__encode(o, markers, builder, 0)
        return builder.build()
Esempio n. 15
0
    def encode(self, o):
        """Return a JSON string representation of a Python data structure.

        >>> JSONEncoder().encode({"foo": ["bar", "baz"]})
        '{"foo": ["bar", "baz"]}'

        """
        if self.check_circular:
            markers = {}
        else:
            markers = None
        if self.ensure_ascii:
            builder = StringBuilder()
        else:
            builder = StringOrUnicodeBuilder()
        self.__encode(o, markers, builder, 0)
        return builder.build()
Esempio n. 16
0
    def encode(self, o):
        """Return a JSON string representation of a Python data structure.

        >>> JSONEncoder().encode({"foo": ["bar", "baz"]})
        '{"foo": ["bar", "baz"]}'

        """
        if self.check_circular:
            markers = {}
        else:
            markers = None
        if self.ensure_ascii:
            builder = StringBuilder()
        else:
            builder = UnicodeBuilder()
        self._encode(o, markers, builder, 0)
        return builder.build()
Esempio n. 17
0
 def test_stringbuilder(self):
     from __pypy__.builders import StringBuilder
     b = StringBuilder()
     b.append("abc")
     b.append("123")
     assert len(b) == 6
     b.append("you and me")
     s = b.build()
     assert len(b) == 16
     assert s == "abc123you and me"
     assert b.build() == s
Esempio n. 18
0
 def test_simple(self):
     from __pypy__.builders import StringBuilder
     b = StringBuilder()
     b.append("abc")
     b.append("123")
     b.append("1")
     s = b.build()
     assert s == "abc1231"
     raises(ValueError, b.build)
     raises(ValueError, b.append, "123")
Esempio n. 19
0
 def test_stringbuilder(self):
     from __pypy__.builders import StringBuilder
     b = StringBuilder()
     b.append("abc")
     b.append("123")
     assert len(b) == 6
     b.append("you and me")
     s = b.build()
     raises(ValueError, len, b)
     assert s == "abc123you and me"
     raises(ValueError, b.build)
Esempio n. 20
0
 def __init__(self, s=b''):
     if s:
         self.builder = StringBuilder(len(s))
         self.builder.append(s)
     else:
         self.builder = StringBuilder()
Esempio n. 21
0
   def process(self, data):
      dlen = len(data)
      r = StringBuilder(dlen)

      i = 0
      k = self.ptr
      m = self.msk
      while i < dlen:
         r.append(chr(ord(data[i + 0])))
         r.append(chr(ord(data[i + 1])))
         r.append(chr(ord(data[i + 2])))
         r.append(chr(ord(data[i + 3])))
         r.append(chr(ord(data[i + 4])))
         r.append(chr(ord(data[i + 5])))
         r.append(chr(ord(data[i + 6])))
         r.append(chr(ord(data[i + 7])))
         i += 8

      self.ptr += dlen
      return r.build()
Esempio n. 22
0
 def process(self, data):
    dlen = len(data)
    r = StringBuilder(dlen)
    r.append(data)
    self.ptr += dlen
    return r.build()
Esempio n. 23
0
 def __init__(self, s=b''):
     if s:
         self.builder = StringBuilder(len(s))
         self.builder.append(s)
     else:
         self.builder = StringBuilder()
Esempio n. 24
0
 def __init__(self):
     super(PyPyStringBuilderWriter, self).__init__()
     self._data = StringBuilder()
Esempio n. 25
0
 def __init__(self):
     self._builder = StringBuilder()
 def __init__(self, s=b""):
     if s:
         builder = StringBuilder(len(s))
         builder.append(s)
     else:
         builder = StringBuilder()
Esempio n. 27
0
 def __init__(self):
     self.__b = StringBuilder()
Esempio n. 28
0
 def test_simple(self):
     from __pypy__.builders import StringBuilder
     b = StringBuilder()
     b.append("abc")
     b.append("123")
     b.append("1")
     s = b.build()
     assert s == "abc1231"
     assert b.build() == s
     b.append("123")
     assert b.build() == s + "123"