private static GraceObject objectFromElement(XElement root) { GraceObject obj = GraceObject.Done; var stringEl = root.XPathSelectElement("//string"); if (stringEl != null) { obj = GraceString.Create(stringEl.Value); } var numberEl = root.XPathSelectElement("//number"); if (numberEl != null) { double d; if (double.TryParse(numberEl.Value, out d)) { obj = GraceNumber.Create(d); } } var objectEl = root.XPathSelectElement("//object"); if (objectEl != null) { int objKey; if (int.TryParse(objectEl.Value, out objKey)) { obj = new GraceForeignObject(objKey); } } return(obj); }
private GraceObject mSize() { return(GraceNumber.Create(data.Length)); }