PropertyPath.PathSegment
class PropertyPath.PathSegment
A segment of a PropertyPath, which includes the name of the property and a 0-based index into this property.
If the property index is not set to NON_REPEATED_CARDINALITY
, this represents a schema property with the "repeated" cardinality, or a path like "foo[1]". Otherwise, this represents a schema property that could have any cardinality, or a path like "foo".
Summary
Constants |
|
---|---|
const Int |
A marker variable to signify that a PathSegment represents a schema property that isn't indexed into. |
Public functions |
|
---|---|
java-static PropertyPath.PathSegment |
Creation method that accepts and validates a property name |
java-static PropertyPath.PathSegment |
Creation method that accepts and validates both a property name and the index into the property. |
Boolean |
|
Int |
Returns the index into the property, or |
String |
Returns the name of the property. |
Int |
hashCode() |
String |
toString() Returns a path representing a PathSegment, either "foo" or "foo[1]" |
Constants
NON_REPEATED_CARDINALITY
const val NON_REPEATED_CARDINALITY = -1: Int
A marker variable to signify that a PathSegment represents a schema property that isn't indexed into. The value is chosen to be invalid if used as an array index.
Public functions
create
java-static fun create(propertyName: String): PropertyPath.PathSegment
Creation method that accepts and validates a property name
The property index is set to NON_REPEATED_CARDINALITY
Parameters | |
---|---|
propertyName: String |
the name of the property |
Returns | |
---|---|
PropertyPath.PathSegment |
A new PathSegment |
create
java-static fun create(propertyName: String, propertyIndex: Int): PropertyPath.PathSegment
Creation method that accepts and validates both a property name and the index into the property.
The property name may not be blank. It also may not contain square brackets or dots, as they are control characters in property paths. The index into the property may not be negative, unless it is NON_REPEATED_CARDINALITY
, as these are invalid array indices.
Parameters | |
---|---|
propertyName: String |
the name of the property |
propertyIndex: Int |
the index into the property |
Returns | |
---|---|
PropertyPath.PathSegment |
A new PathSegment |
Throws | |
---|---|
java.lang.IllegalArgumentException |
if the property name or index is invalid. |
getPropertyIndex
fun getPropertyIndex(): Int
Returns the index into the property, or NON_REPEATED_CARDINALITY
if this does not represent a PathSegment with an index.
getPropertyName
fun getPropertyName(): String
Returns the name of the property.