tree da7a106adaf0ec59f6cf40cd2dc87bbbad1b8ce0
parent b57c9972f47a101ec871cbca744479154042dba1
author Brett Vickers <brett@beevik.com> 1548525730 -0800
committer Brett Vickers <brett@beevik.com> 1548525730 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJcTKCkAAoJENIYhexSID1uo6kP/jwANC42UOTs4UldkX/i+rsR
 ibuNNcIh+PTK/LSKgz/XnCYzEpVI9DSpGpWyuz+wui4lOSjfshP67ysB5+wT42pc
 iYXm7q4C5/noj+AJ3QqfR962bwY4iwiR64NUtetia6b0zCAQhA5mZfbFMjAnd9HF
 Pdgphxt/luMqNqcU5TVZJixrOftNL3aGlBE7DQEZuDxXrdLkXnuOVq3ZVozolyLH
 6jE748QciuXQvnpc9O41CA9tgE6Ekc3LpiWfHUa+fJOYUIQwN4SenaVtM00LdlvH
 G3C87X3uyNAHpwsI6TpFe8w4bIwK91HT07psptBAPDYRfKZkHf2T6rIcvYywADTh
 6w2Kse2/WhQ/24VrXon7YshvZbb9cON3bsnzFj9xYSu2P8XLl7rLQytWFdoO6/4R
 FPppvhGPtda2oMXneH1X3qdIislI80KkN+Lu4X9815D8PVHpXN4a2seU/7+vxMf8
 MUsAoIqOWDDY1Fw2Vfx7bHqhW+ZBzJ/IfiSWnEEsGddTna8dB4JOBFmUCiMN509N
 2byrMxLFjX6AD/NGgFlqeOzVDy4WVFWqH+BbBTDjRVaPVxVj4eewpBzfWGG8mjKl
 8tFXq2S7fxcZIkJiz3MZqywNsSmnvyPqldefhWUN1aqA0oJ/jbCq6cZBHSUITyhA
 WK3yi+PjHLVjudrRzi10
 =UXNH
 -----END PGP SIGNATURE-----

Add element Tail and SetTail methods.

Tail returns the character data immediately following an
element's end tag. SetTail modifies it.

SetText now replaces runs of character data tokens (CDATA
or text) with a single character data token. SetCData works
similarly.

The Token interface offers a new Index method, which
returns the index of the token in its parent's child list.

Added element RemoveChildAt and InsertChildAt methods. Both
methods take an index as a parameter.

Deprecated the element InsertChild method in favor of
InsertChildAt.
