Logo Search packages:      
Sourcecode: yaskkserv version File versions  Download package

void SkkSimpleString::overwrite ( char  c,
int  index 
) [inline]

指定位置に文字を上書きします。

Attention:
c に \0 を指定して書き込み、文字列を切断することができます。 index が現在の文字列内に収まらない場合は何もしません。アサートが有効ならば アサートします。

Definition at line 485 of file skk_simple_string.hpp.

References getSize().

Referenced by append(), and overwrite().

        {
                char *d = get_buffer() + index;
#ifdef YASKKSERV_DEBUG_PARANOIA
                const int terminator_size = 1;
                int size = buffer_ + buffer_size_ - MARGIN_SIZE - d - terminator_size;

                DEBUG_ASSERT_RANGE(size,
                                   1,
                                   buffer_size_ - MARGIN_SIZE * 2 - 1);
#endif  // YASKKSERV_DEBUG_PARANOIA
                if (index <= getSize())
                {
                        DEBUG_ASSERT(0);
                }
                else
                {
                        overwrite(c,
                                  d);
                        update_string();
                }
        }


Generated by  Doxygen 1.6.0   Back to index