Packages

object Collector

Attempt to collect all the fields in a class or object that contain a parser of type parsley.Parsley, or from a parsley.token.Lexer.

This information is used later in the debug tree-building process to rename certain parsers so that they do not end up being named things like "packageanon".

You only need to run this once per parser-holding object.

Source
Collector.scala
Since

4.5.0

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Collector
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def assignName(par: Parsley[_], name: String): Unit

    Manually add a name for a parser by reference.

    Manually add a name for a parser by reference.

    Can also be used if a more informative name for a parser is wanted. In this case, use this method after using names or lexer to override the automatically collected / found name.

    Note

    Names assigned using this will take precedence over names assigned using parsley.debugger.combinator.named.

  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  10. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. def isSupported: Boolean

    Does the implementation of the collector for the current Scala platform actually work in automatically finding parsers in objects and getting their field names as written in your parser code?

    Does the implementation of the collector for the current Scala platform actually work in automatically finding parsers in objects and getting their field names as written in your parser code?

    Annotations
    @inline()
    Note

    Manually named parsers using assignName or parsley.debugger.combinator.named will still work regardless if the platform is supported or not.

  14. def lexer(lexer: Lexer): Unit

    Collect names of parsers from a parsley.token.Lexer.

    Collect names of parsers from a parsley.token.Lexer.

    Note

    For Scala 3 on the JVM, this may trigger a warning about setAccessible for private members being deprecated.

    See also

    names for more information regarding the warning.

  15. def names(obj: Any): Unit

    Collect names of parsers from an object.

    Collect names of parsers from an object.

    Note

    For Scala 3 on the JVM, it is advised that all parsers in objects being introspected are marked public, as otherwise, a semi-deprecated call to setAccessible will be called on a private object, which may be restricted or removed in a future version of the JVM. It may be advised to manually name one's parsers (to be debugged) using assignName or parsley.debugger.combinator.named if that warning is not desirable.

  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  20. def toString(): String
    Definition Classes
    AnyRef → Any
  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped