Skip to content

Commit

Permalink
Using yaidom 1.8.0-M2 (so removed ResolvedNodes)
Browse files Browse the repository at this point in the history
  • Loading branch information
dvreeze committed Mar 19, 2018
1 parent 223a088 commit 7e8c9ab
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 18 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ matrix:
- jdk: oraclejdk8
scala: 2.12.4
- jdk: oraclejdk8
scala: 2.11.11
scala: 2.11.12

script:
- sbt ++$TRAVIS_SCALA_VERSION -J-Xmx3G test
Expand Down
2 changes: 1 addition & 1 deletion build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ lazy val commonSettings = Seq(
pomExtra := pomData,
pomIncludeRepository := { _ => false },

libraryDependencies += "eu.cdevreeze.yaidom" %%% "yaidom" % "1.8.0-M1",
libraryDependencies += "eu.cdevreeze.yaidom" %%% "yaidom" % "1.8.0-M2",

libraryDependencies += "org.scalactic" %%% "scalactic" % "3.0.4",

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ import eu.cdevreeze.yaidom.core.QNameProvider
import eu.cdevreeze.yaidom.core.Scope
import eu.cdevreeze.yaidom.queryapi.BackingElemNodeApi
import eu.cdevreeze.yaidom.queryapi.Nodes
import eu.cdevreeze.yaidom.resolved.ResolvedNodes
import net.sf.saxon.`type`.Type
import net.sf.saxon.om.AbsolutePath
import net.sf.saxon.om.AxisInfo
Expand All @@ -44,7 +43,7 @@ import net.sf.saxon.pattern.NodeKindTest
* @author Chris de Vreeze
*/
// scalastyle:off null
sealed abstract class SaxonNode(val wrappedNode: NodeInfo) extends ResolvedNodes.Node {
sealed abstract class SaxonNode(val wrappedNode: NodeInfo) extends Nodes.Node {

final override def toString: String = wrappedNode.toString

Expand Down Expand Up @@ -111,7 +110,7 @@ sealed trait SaxonCanBeDocumentChild extends SaxonNode with Nodes.CanBeDocumentC
*/
// scalastyle:off number.of.methods
final class SaxonElem(
override val wrappedNode: NodeInfo) extends SaxonNode(wrappedNode) with ResolvedNodes.Elem with SaxonCanBeDocumentChild with BackingElemNodeApi {
override val wrappedNode: NodeInfo) extends SaxonNode(wrappedNode) with Nodes.Elem with SaxonCanBeDocumentChild with BackingElemNodeApi {

require(wrappedNode ne null)
require(wrappedNode.getNodeKind == Type.ELEMENT, s"Expected element but got node kind ${wrappedNode.getNodeKind}")
Expand Down Expand Up @@ -483,7 +482,7 @@ final class SaxonElem(
def commentChildren: immutable.IndexedSeq[SaxonComment] = children collect { case c: SaxonComment => c }
}

final class SaxonText(override val wrappedNode: NodeInfo) extends SaxonNode(wrappedNode) with ResolvedNodes.Text {
final class SaxonText(override val wrappedNode: NodeInfo) extends SaxonNode(wrappedNode) with Nodes.Text {
require(wrappedNode ne null)
require(
wrappedNode.getNodeKind == Type.TEXT || wrappedNode.getNodeKind == Type.WHITESPACE_TEXT,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,18 +45,17 @@ import eu.cdevreeze.yaidom.queryapi.Nodes
import eu.cdevreeze.yaidom.queryapi.ScopedElemNodeApi
import eu.cdevreeze.yaidom.queryapi.ScopedElemLike
import eu.cdevreeze.yaidom.queryapi.SubtypeAwareElemLike
import eu.cdevreeze.yaidom.resolved.ResolvedNodes

/**
* "Taxonomy DOM node".
*
* @author Chris de Vreeze
*/
sealed abstract class TaxonomyNode extends ResolvedNodes.Node
sealed abstract class TaxonomyNode extends Nodes.Node

sealed abstract class CanBeTaxonomyDocumentChild extends TaxonomyNode with Nodes.CanBeDocumentChild

final case class TaxonomyTextNode(text: String) extends TaxonomyNode with ResolvedNodes.Text
final case class TaxonomyTextNode(text: String) extends TaxonomyNode with Nodes.Text

final case class TaxonomyProcessingInstructionNode(target: String, data: String) extends CanBeTaxonomyDocumentChild
with Nodes.ProcessingInstruction
Expand Down Expand Up @@ -133,7 +132,7 @@ final case class TaxonomyCommentNode(text: String) extends CanBeTaxonomyDocument
sealed abstract class TaxonomyElem private[dom] (
val backingElem: BackingElemNodeApi,
val childElems: immutable.IndexedSeq[TaxonomyElem]) extends CanBeTaxonomyDocumentChild
with AnyTaxonomyElem with ResolvedNodes.Elem with ScopedElemNodeApi with ScopedElemLike with SubtypeAwareElemLike {
with AnyTaxonomyElem with Nodes.Elem with ScopedElemNodeApi with ScopedElemLike with SubtypeAwareElemLike {

type ThisElem = TaxonomyElem

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,18 +40,17 @@ import eu.cdevreeze.yaidom.queryapi.Nodes
import eu.cdevreeze.yaidom.queryapi.ScopedElemNodeApi
import eu.cdevreeze.yaidom.queryapi.ScopedElemLike
import eu.cdevreeze.yaidom.queryapi.SubtypeAwareElemLike
import eu.cdevreeze.yaidom.resolved.ResolvedNodes

/**
* "XBRL instance DOM node".
*
* @author Chris de Vreeze
*/
sealed abstract class XbrliNode extends ResolvedNodes.Node
sealed abstract class XbrliNode extends Nodes.Node

sealed abstract class CanBeXbrliDocumentChild extends XbrliNode with Nodes.CanBeDocumentChild

final case class XbrliTextNode(text: String) extends XbrliNode with ResolvedNodes.Text
final case class XbrliTextNode(text: String) extends XbrliNode with Nodes.Text

final case class XbrliProcessingInstructionNode(target: String, data: String) extends CanBeXbrliDocumentChild
with Nodes.ProcessingInstruction
Expand Down Expand Up @@ -95,7 +94,7 @@ final case class XbrliCommentNode(text: String) extends CanBeXbrliDocumentChild
sealed class XbrliElem private[instance] (
val backingElem: BackingElemNodeApi,
childElems: immutable.IndexedSeq[XbrliElem]) extends CanBeXbrliDocumentChild
with ResolvedNodes.Elem with ScopedElemNodeApi with ScopedElemLike with SubtypeAwareElemLike {
with Nodes.Elem with ScopedElemNodeApi with ScopedElemLike with SubtypeAwareElemLike {

// TODO Restore old equality on the backing elements themselves (after JS DOM wrappers have appropriate equality)
assert(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,9 @@ package eu.cdevreeze.tqa.instancevalidation

import eu.cdevreeze.tqa.XmlFragmentKey.XmlFragmentKeyAware
import eu.cdevreeze.yaidom.queryapi.BackingElemNodeApi
import eu.cdevreeze.yaidom.queryapi.ClarkElemNodeApi
import eu.cdevreeze.yaidom.queryapi.Nodes
import eu.cdevreeze.yaidom.resolved
import eu.cdevreeze.yaidom.resolved.ResolvedNodes

/**
* Typed dimension member, which on the one hand knows its ancestry, and on the other hand can be
Expand All @@ -40,12 +41,12 @@ final class TypedDimensionMember(val backingElem: BackingElemNodeApi) {

private def makeResolvedElem(elem: BackingElemNodeApi): resolved.Elem = {
require(
elem.isInstanceOf[ResolvedNodes.Elem],
s"Cannot treat element ${elem.key} as 'ResolvedNodes.Elem'. This is a bug in the program.")
elem.isInstanceOf[Nodes.Elem with ClarkElemNodeApi],
s"Cannot treat element ${elem.key} as 'Nodes.Elem with ClarkElemNodeApi'. This is a bug in the program.")

// Best effort, but not completely safe as a basis to compare elements.

resolved.Elem(elem.asInstanceOf[ResolvedNodes.Elem]).
resolved.Elem(elem.asInstanceOf[Nodes.Elem with ClarkElemNodeApi]).
removeAllInterElementWhitespace.coalesceAndNormalizeAllText
}
}

0 comments on commit 7e8c9ab

Please sign in to comment.