Merge pull request #263 from tom-tan/make-startMark-public

Add `Node.startMark`
This commit is contained in:
Cameron Ross 2020-11-03 13:57:02 -04:00 committed by GitHub
commit 22267baaa7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 2 deletions

View file

@ -25,8 +25,7 @@ class YAMLException : Exception
}
}
package:
// Position in a YAML stream, used for error messages.
/// Position in a YAML stream, used for error messages.
struct Mark
{
package:
@ -45,6 +44,18 @@ struct Mark
column_ = cast(ushort)column;
}
/// Get a line number.
@property ushort line() @safe pure nothrow @nogc const
{
return line_;
}
/// Get a column number.
@property ushort column() @safe pure nothrow @nogc const
{
return column_;
}
/// Get a string representation of the mark.
string toString() @safe pure nothrow const
{
@ -57,6 +68,7 @@ struct Mark
}
}
package:
// A struct storing parameters to the MarkedYAMLException constructor.
struct MarkedYAMLExceptionData
{

View file

@ -402,6 +402,12 @@ struct Node
return tag_;
}
/// Return the start position of the node.
@property Mark startMark() const @safe pure nothrow
{
return startMark_;
}
/** Equality test.
*
* If T is Node, recursively compares all subnodes.