mt_throws Result
AndroidLogcatOutputStream::write (ConstMemory   const mem,
                                  Size        * const ret_nwritten)
{
    if (ret_nwritten)
        *ret_nwritten = mem.len();

    __android_log_print (ANDROID_LOG_INFO,
                         "---DEBUG",
                         "%.*s",
                         (int) mem.len(),
                         (char const *) mem.buf());

    return Result::Success;
}
示例#2
0
BooleanValue strToBoolean (ConstMemory const value_mem)
{
    if (value_mem.len() == 0)
        return Boolean_Default;

    Byte arr [32];
    Memory mem;
    {
        Size len = sizeof (arr);
        if (len > value_mem.len())
            len = value_mem.len();

        memcpy (arr, value_mem.buf(), len);
        mem = Memory (arr, len);
    }

    for (Size i = 0; i < mem.len(); ++i)
        mem.mem() [i] = (Byte) tolower (mem.mem() [i]);

    if (equal (mem, "y")    ||
            equal (mem, "yes")  ||
            equal (mem, "on")   ||
            equal (mem, "true") ||
            equal (mem, "1"))
    {
        return Boolean_True;
    }

    if (equal (mem, "n")     ||
            equal (mem, "no")    ||
            equal (mem, "off")   ||
            equal (mem, "false") ||
            equal (mem, "0"))
    {
        return Boolean_False;
    }

    return Boolean_Invalid;
}
示例#3
0
LineServer::LineServer (EmbedContainer * const embed_container)
    : Object (embed_container),
      max_line_len (4096),
      recv_pos (0)
{
}

LineServer::~LineServer ()
{
}

ConstMemory lineEscape (ConstMemory     const line,
                        StRef<String> * const mt_nonnull ret_ref)
{
    Byte const * const buf = line.buf();
    Size const len = line.len();
    Count esc_len = len;
    bool esc = false;
    for (Size i = 0; i < len; ++i) {
        if (buf [i] == ' ') {
            esc = true;
        } else
        if (buf [i] == '_' || buf [i] == '\\') {
            ++esc_len;
            esc = true;
        }
    }

    if (esc) {
        *ret_ref = st_grab (new (std::nothrow) String (esc_len));