private int cache_idx;
private MPlist intervals;
private MPlist default_property;
- private bool read_only;
+ private bool read_only = false;
private static UTF8Encoding utf8 = new UTF8Encoding ();
public override string ToString () { return sb.ToString (); }
+ public static implicit operator MText (string str)
+ {
+ return new MText (str);
+ }
+
+ public static explicit operator string (MText mt)
+ {
+ return mt.ToString ();
+ }
+
private static int inc_idx (StringBuilder sb, int i)
{
return (i + (Char.IsHighSurrogate (sb[i]) ? 2 : 1));
return this;
}
+ public MText Del ()
+ {
+ return Del (0, Length);
+ }
+
public MText Del (int from, int to)
{
if (check_range (from, to, true))
public object FindProp (MSymbol key, int pos, out int from, out int to)
{
- from = to = pos;
+ from = 0;
+ to = Length;
check_pos (pos, false);
MInterval i = (MInterval) intervals.Get (key);