append_char | |
·
Operation | Append a character to a string builder |
·
Format | |
·
Direct Format | |
·
Forms | append_char = 255, 87 (0xFF, 0x57)
|
·
Stack | ..., builder, ch => ..., builder |
· Description | The builder and ch are popped from the
stack as the types ptr and int32 respectively.
The character ch is appended to the end of the string builder
indicated by builder. The builder is then pushed
back onto the stack. |
· Notes | This instruction is used to inline calls to the
StringBuilder.Append(char) method. The method
argument must be a pointer to this method, because the interpreter
will "bail out" to the C# class library if the append is too
difficult to perform (e.g. the string must be reallocated). |
· Exceptions | System.NullReferenceException -- Raised if
builder is null .
|
string_concat_3 | |
·
Operation | Concatenate three strings |
·
Format | |
·
Direct Format | |
·
Forms | string_concat_3 = 255, 79 (0xFF, 0x4F)
|
·
Stack | ..., value1, value2, value3 => ..., result |
· Description | The values value1, value2, and value3
are popped from the stack as type string . The result
is the string that results from concatenating
value1, value2, and value3. The result
is pushed onto the stack. |
· Notes | This instruction is used to inline calls to the
String.Concat(String, String, String) method. |
string_concat_4 | |
·
Operation | Concatenate four strings |
·
Format | |
·
Direct Format | |
·
Forms | string_concat_4 = 255, 80 (0xFF, 0x50)
|
·
Stack | ..., value1, value2, value3, value4 => ..., result |
· Description | The values value1, value2, value3,
and value4 are popped from the stack as type string .
The result is the string that results from
concatenating value1, value2, value3, and
value4. The result is pushed onto the stack. |
· Notes | This instruction is used to inline calls to the
String.Concat(String, String, String, String) method. |
string_eq | |
·
Operation | Test two strings for equality |
·
Format | |
·
Direct Format | |
·
Forms | string_eq = 255, 81 (0xFF, 0x51)
|
·
Stack | ..., value1, value2 => ..., result |
· Description | Both value1 and value2 are popped
from the stack as type string . The result
is the int32 that results from comparing
value1 and value2: 1 if they are equal, and 0
if they are not equal. The result is pushed
onto the stack. |
· Notes | This instruction is used to inline calls to the
String.op_Equality(String, String) method. |
string_get_char | |
·
Operation | Get a particular character from a string |
·
Format | |
·
Direct Format | |
·
Forms | string_get_char = 255, 83 (0xFF, 0x53)
|
·
Stack | ..., value1, value2 => ..., result |
· Description | Both value1 and value2 are popped
from the stack as the types string and int32
respectively. The result is the int32 that
results from fetching the character at position value2
within the string value1.
System.IndexOutOfRangeException will be thrown if
value2 is an invalid index. |
· Notes | This instruction is used to inline calls to the
String.get_Chars(int) method. |
· Exceptions | System.NullReferenceException -- Raised if
value1 is null .
System.IndexOutOfRangeException -- Raised if
value2 is not a valid character index for the string
value1.
|
string_ne | |
·
Operation | Test two strings for inequality |
·
Format | |
·
Direct Format | |
·
Forms | string_ne = 255, 82 (0xFF, 0x52)
|
·
Stack | ..., value1, value2 => ..., result |
· Description | Both value1 and value2 are popped
from the stack as type string . The result
is the int32 that results from comparing
value1 and value2: 1 if they are not equal, and 0
if they are equal. The result is pushed
onto the stack. |
· Notes | This instruction is used to inline calls to the
String.op_Inequality(String, String) method. |