1833 |
return make_number ((unsigned char) SREF (array, idxval)); |
return make_number ((unsigned char) SREF (array, idxval)); |
1834 |
idxval_byte = string_char_to_byte (array, idxval); |
idxval_byte = string_char_to_byte (array, idxval); |
1835 |
|
|
1836 |
c = STRING_CHAR (&SREF (array, idxval_byte), |
c = STRING_CHAR (SDATA (array) + idxval_byte, |
1837 |
SBYTES (array) - idxval_byte); |
SBYTES (array) - idxval_byte); |
1838 |
return make_number (c); |
return make_number (c); |
1839 |
} |
} |
2031 |
CHECK_NUMBER (newelt); |
CHECK_NUMBER (newelt); |
2032 |
|
|
2033 |
idxval_byte = string_char_to_byte (array, idxval); |
idxval_byte = string_char_to_byte (array, idxval); |
2034 |
p1 = &SREF (array, idxval_byte); |
p1 = SDATA (array) + idxval_byte; |
2035 |
PARSE_MULTIBYTE_SEQ (p1, nbytes - idxval_byte, prev_bytes); |
PARSE_MULTIBYTE_SEQ (p1, nbytes - idxval_byte, prev_bytes); |
2036 |
new_bytes = CHAR_STRING (XINT (newelt), p0); |
new_bytes = CHAR_STRING (XINT (newelt), p0); |
2037 |
if (prev_bytes != new_bytes) |
if (prev_bytes != new_bytes) |
2065 |
CHECK_NUMBER (newelt); |
CHECK_NUMBER (newelt); |
2066 |
|
|
2067 |
if (XINT (newelt) < 0 || SINGLE_BYTE_CHAR_P (XINT (newelt))) |
if (XINT (newelt) < 0 || SINGLE_BYTE_CHAR_P (XINT (newelt))) |
2068 |
SREF (array, idxval) = XINT (newelt); |
SSET (array, idxval, XINT (newelt)); |
2069 |
else |
else |
2070 |
{ |
{ |
2071 |
/* We must relocate the string data while converting it to |
/* We must relocate the string data while converting it to |