ApplicationInspector
ApplicationInspector copied to clipboard
Implement YamlPath for YamlDotNet
Fix #490.
Imeplements YamlPath support with extension methods based on YamlDotNet.
YamlPath Spec: https://github.com/wwkimball/yamlpath/wiki/Segments-of-a-YAML-Path
Based on the spec this is the current state of the PR:
Done: Array Elements Array Element Searches Array Slices Hash Attribute Searches Hash Keys Hash Slices Pass-Through Selections for Arrays of Hashes Wildcards Regex operator Negate operator Sets Escaped Key Names Key names with dots ** recursive Wildcard Anchors Demarcated strings as Terms Search Keywords
has_childmaxmin
To Do: https://github.com/wwkimball/yamlpath/wiki/Wildcard-Segments#search-shorthand Semi-Wildcards
https://github.com/wwkimball/yamlpath/wiki/Search-Expressions
Search Expressions alternate operand meanings. Currently the operand is only interpreted as the name of the child key in a hash:
Test if [] patterns work alone with no key.
Not supported and might be implemented: Search Keywords
nameI believe this would be onerous based on the object structure. Each node in YamlDotNet doesn't know the name it is keyed to in the original structure, may require significant refactoring or reverse engineering from the raw yml node graph.parentI believe this would be onerous based on the object structure. Objects in YamlDotNet don't track their parent. Would have to reverse engineer parents from the raw yml node graph.
Not Supported and likely won't be implemented: Collectors/Collector Math
- Not familiar with these and unsure how they are useful.