trait Cleanup extends AnyRef
Represents some post-processing on a stream of fs2-data-xml XmlEvent
,
e.g. piping the stream through a resolver and/or normalizer.
This is how the ToFs2XmlEventStream
typeclass allows you to override the stream creation
behavior for the instances that use the events
pipe themselves.
- Source
- Fs2DataSource.scala
- Alphabetic
- By Inheritance
- Cleanup
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- by elem
- Hide All
- Show All
- Public
- All
Abstract Value Members
- abstract def pipe[F[_]](implicit F: MonadError[F, Throwable]): Pipe[F, fs2.data.xml.XmlEvent, fs2.data.xml.XmlEvent]
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- def &[A1 >: A, B, R](that: SingleItemContextMatcher[ElemStart, B])(implicit reduce: Aux[A1, B, R]): SingleItemContextMatcher[ElemStart, R]
Operator version of
and
Operator version of
and
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher
- def +(other: String): String
- def ->[B](y: B): (Cleanup, B)
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def \[A1 >: A, B, R](next: ContextMatcher[ElemStart, B])(implicit reduce: Aux[A1, B, R]): ContextMatcher[ElemStart, R]
Create a new matcher by forming a chain with this matcher at the front, and the
next
matcher at the back.Create a new matcher by forming a chain with this matcher at the front, and the
next
matcher at the back. In other words, a matcher for a context within another context.- A1
To satisfy covariance on A
- B
The
next
matcher's context type- R
The "reduced" content type, derived from the tuple type
(A, B)
based on thereduce
rule.- next
A matcher which will be used to match the "inner" context
- reduce
The
TypeReduce
rule to help omitUnit
from the resulting context type- returns
A matcher which delegates to
this
matcher first, then thenext
matcher for the remaining stack.
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- ContextMatcher
- def and[A1 >: A, B, R](that: SingleItemContextMatcher[ElemStart, B])(implicit reduce: Aux[A1, B, R]): SingleItemContextMatcher[ElemStart, R]
Creates a new single-element matcher which combines the results of both
this
matcher andthat
matcher.Creates a new single-element matcher which combines the results of both
this
matcher andthat
matcher. Boththis
andthat
will operate on the first element of the stack (as opposed to Chained matchers).- A1
To satisfy covariance on A
- B
The other matcher's result type
- R
The combined result type
- that
The matcher to combine
- reduce
The
TypeReduce
rule for combining the two match results- returns
A new matcher which combines the results of
this
andthat
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher
- def apply(stack: IndexedSeq[ElemStart], offset: Int, avail: Int): Option[Unit]
The main context match method.
The main context match method.
Inspects the elements in the XML "tag stack", which is essentially a
List[StartElement]
, but for performance reasons is represented as an array with an "offset" index and a number of available elements from that offset. If the elements correspond to a context value ofA
, the implementation must then pass the remaining elements of the stack to thenext
matcher, i.e. by callingnext(stack, offset + numConsumed, avail - numConsumed)
.The difference between this method and
applyChained
is the lack of thenext
parameter; in this method, the current matcher is assumed to be the end of the chain.- stack
A reference to the complete XML "tag stack". Note that the responsibility of this method is limited to a *slice* of this value, as defined by
offset
andavail
.- offset
The index of the first element to be considered by the matching logic. From this method's point of view, the "first" element in the stack is actually at
stack(offset)
- avail
The number of elements available in the
stack
starting from theoffset
.- returns
An option containing the successfully-matched context, or
None
.
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- ContextMatcher
- def applyChained[B](stack: IndexedSeq[ElemStart], offset: Int, avail: Int, next: ContextMatcher[ElemStart, B]): Option[(Unit, B)]
The underlying context match method.
The underlying context match method.
Inspects the elements in the XML "tag stack", which is essentially a
List[StartElement]
, but for performance reasons is represented as an array with an "offset" index and a number of available elements from that offset. If the elements correspond to a context value ofA
, the implementation must then pass the remaining elements of the stack to thenext
matcher, i.e. by callingnext(stack, offset + numConsumed, avail - numConsumed)
.The
next
matcher is necessary in order to support non-greedy matchers, e.g.ContextMatcher.variableLength
, a.k.a.**
. Without a reference to thenext
matcher in the chain, matcher implementations would be forced to pick a fixed number of elements for matching, never knowing that the overall match could have succeeded if they had consumed some additional elements.- B
The
next
matcher's context type- stack
A reference to the complete XML "tag stack". Note that the responsibility of this method is limited to a *slice* of this value, as defined by
offset
andavail
.- offset
The index of the first element to be considered by the matching logic. From this method's point of view, the "first" element in the stack is actually at
stack(offset)
- avail
The number of elements available in the
stack
starting from theoffset
.- next
The next matcher in the chain.
- returns
If the match succeeded, and the
next
match succeded, an Option containing a tuple of both match results. If the match failed, or if thenext
match failed,None
.
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher → ContextMatcher
- def applyElem(elem: ElemStart): Option[Unit]
The matching operation for single-element matchers.
The matching operation for single-element matchers.
- elem
The first element in the XML tag stack
- returns
Some(context)
for a successful match,None
otherwise
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def ensuring(cond: (Cleanup) => Boolean, msg: => Any): Cleanup
- def ensuring(cond: (Cleanup) => Boolean): Cleanup
- def ensuring(cond: Boolean, msg: => Any): Cleanup
- def ensuring(cond: Boolean): Cleanup
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def filter(p: (Unit) => Boolean): SingleItemContextMatcher[ElemStart, Unit]
Create a new ContextMatcher which takes the match result of this matcher and passes it through the validation function
f
.Create a new ContextMatcher which takes the match result of this matcher and passes it through the validation function
f
. Iff
returnsfalse
, the match is unsuccessful.- p
The filter predicate, i.e. the validation function
- returns
A new matcher with validated results
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher → ContextMatcher
- def finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def flatMap[B](f: (Unit) => Option[B]): SingleItemContextMatcher[ElemStart, B]
Create a new ContextMatcher which takes the match result of this matcher and passes it through the combined transformation/validation function
f
.Create a new ContextMatcher which takes the match result of this matcher and passes it through the combined transformation/validation function
f
. Iff
returnsNone
, the match is unsuccessful; iff
returns aSome
, the value inside is the result of the match.- B
The transformed context type
- f
The transformation/validation function
- returns
A new matcher with transformed and validated results
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher → ContextMatcher
- def formatted(fmtstr: String): String
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def map[B](f: (Unit) => B): SingleItemContextMatcher[ElemStart, B]
Create a new ContextMatcher which takes the match result of this matcher and passes it through the transformation function
f
.Create a new ContextMatcher which takes the match result of this matcher and passes it through the transformation function
f
.- B
The transformed context type
- f
The transformation function
- returns
A new matcher with transformed results
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher → ContextMatcher
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def or[A2 >: A](that: SingleItemContextMatcher[ElemStart, A2]): SingleItemContextMatcher[ElemStart, A2]
Specialization of the default
or
method, specifically for SingleElementContextMatchersSpecialization of the default
or
method, specifically for SingleElementContextMatchers- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher
- def or[A2 >: A](that: ContextMatcher[ElemStart, A2]): ContextMatcher[ElemStart, A2]
Create a new ContextMatcher which will fall back to a second matcher in the event that this matcher fails to match a context.
Create a new ContextMatcher which will fall back to a second matcher in the event that this matcher fails to match a context.
- A2
The resulting context type (common supertype between this matcher and
that
)- that
The matcher which will be used as the fallback
- returns
A matcher that falls back to another matcher in case of failure
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- ContextMatcher
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def |[A2 >: A](that: SingleItemContextMatcher[ElemStart, A2]): SingleItemContextMatcher[ElemStart, A2]
Operator version of
or
, specialized for SingleElementContextMatchersOperator version of
or
, specialized for SingleElementContextMatchers- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- SingleItemContextMatcher
- def |[A2 >: A](that: ContextMatcher[ElemStart, A2]): ContextMatcher[ElemStart, A2]
Operator version of
or
Operator version of
or
- Implicit
- This member is added by an implicit conversion from Cleanup toElemContextMatcher[Unit] performed by method elem in io.dylemma.spac.xml.This conversion will take place only if an implicit value of type AsQName[Cleanup] is in scope.
- Definition Classes
- ContextMatcher
Deprecated Value Members
- def →[B](y: B): (Cleanup, B)
- Implicit
- This member is added by an implicit conversion from Cleanup toArrowAssoc[Cleanup] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.