Exemplo n.º 1
0
def do_copystrcontent(cpu, _, srcbox, dstbox, srcstartbox, dststartbox, lengthbox):
    src = srcbox.getref(lltype.Ptr(rstr.STR))
    dst = dstbox.getref(lltype.Ptr(rstr.STR))
    srcstart = srcstartbox.getint()
    dststart = dststartbox.getint()
    length = lengthbox.getint()
    rstr.copy_string_contents(src, dst, srcstart, dststart, length)
Exemplo n.º 2
0
def do_copystrcontent(cpu, _, srcbox, dstbox, srcstartbox, dststartbox,
                      lengthbox):
    src = srcbox.getref(lltype.Ptr(rstr.STR))
    dst = dstbox.getref(lltype.Ptr(rstr.STR))
    srcstart = srcstartbox.getint()
    dststart = dststartbox.getint()
    length = lengthbox.getint()
    rstr.copy_string_contents(src, dst, srcstart, dststart, length)
Exemplo n.º 3
0
    def str_from_buffer(raw_buf, gc_buf, allocated_size, needed_size):
        """
        Converts from a pair returned by alloc_buffer to a high-level string.
        The returned string will be truncated to needed_size.
        """
        assert allocated_size >= needed_size

        if gc_buf and (allocated_size == needed_size):
            return hlstrtype(gc_buf)

        new_buf = lltype.malloc(STRTYPE, needed_size)
        if gc_buf:
            copy_string_contents(gc_buf, new_buf, 0, 0, needed_size)
        else:
            copy_raw_to_string(raw_buf, new_buf, 0, needed_size)
        return hlstrtype(new_buf)
Exemplo n.º 4
0
Arquivo: llmodel.py Projeto: Mu-L/pypy
 def bh_copystrcontent(self, src, dst, srcstart, dststart, length):
     src = lltype.cast_opaque_ptr(lltype.Ptr(rstr.STR), src)
     dst = lltype.cast_opaque_ptr(lltype.Ptr(rstr.STR), dst)
     rstr.copy_string_contents(src, dst, srcstart, dststart, length)
Exemplo n.º 5
0
 def bh_copystrcontent(self, src, dst, srcstart, dststart, length):
     src = lltype.cast_opaque_ptr(lltype.Ptr(rstr.STR), src)
     dst = lltype.cast_opaque_ptr(lltype.Ptr(rstr.STR), dst)
     assert 0 <= srcstart <= srcstart + length <= len(src.chars)
     assert 0 <= dststart <= dststart + length <= len(dst.chars)
     rstr.copy_string_contents(src, dst, srcstart, dststart, length)
Exemplo n.º 6
0
 def bh_copystrcontent(self, src, dst, srcstart, dststart, length):
     src = lltype.cast_opaque_ptr(lltype.Ptr(rstr.STR), src)
     dst = lltype.cast_opaque_ptr(lltype.Ptr(rstr.STR), dst)
     rstr.copy_string_contents(src, dst, srcstart, dststart, length)
Exemplo n.º 7
0
 def bh_copystrcontent(self, src, dst, srcstart, dststart, length):
     src = lltype.cast_opaque_ptr(lltype.Ptr(rstr.STR), src)
     dst = lltype.cast_opaque_ptr(lltype.Ptr(rstr.STR), dst)
     assert 0 <= srcstart <= srcstart + length <= len(src.chars)
     assert 0 <= dststart <= dststart + length <= len(dst.chars)
     rstr.copy_string_contents(src, dst, srcstart, dststart, length)