Method: Oj::Doc#move
- Defined in:
- ext/oj/fast.c
#move(path) ⇒ Object
Moves the document marker to the path specified. The path can an absolute path or a relative path.
@param [String] path path to the location to move to
“/one/2”
1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 |
# File 'ext/oj/fast.c', line 1428
static VALUE doc_move(VALUE self, VALUE str) {
Doc doc = self_doc(self);
const char *path;
int loc;
path = StringValuePtr(str);
if ('/' == *path) {
doc->where = doc->where_path;
path++;
}
if (0 != (loc = move_step(doc, path, 1))) {
rb_raise(rb_eArgError, "Failed to locate element %d of the path %s.", loc, path);
}
return Qnil;
}
|