final case class SourcePos(relativePath: String, fileName: String, line: Int) extends Product with Serializable

The location in the source file at which an assertion was written.

An instance is materialised by the compiler at the point where it is required, so a Result constructor which takes one implicitly reports the caller's location rather than a location inside Hedgehog itself.

No absolute path is stored. An absolute path is baked into the compiled class file as a string constant, so the same source compiled from two checkout directories produces two different class files. That defeats a shared build cache, which would otherwise hand one machine another machine's paths on a legitimate cache hit, and it defeats distributed test execution and reproducible builds. It also leaks the publisher's filesystem into a published artefact.

relativePath

the path of the source file with the compiler's working directory stripped, which under sbt is the build root, and the path exactly as captured when it does not sit underneath that directory

fileName

the simple name of the source file

line

the 1-based line number

Linear Supertypes
Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SourcePos
  2. Serializable
  3. Product
  4. Equals
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new SourcePos(relativePath: String, fileName: String, line: Int)

    relativePath

    the path of the source file with the compiler's working directory stripped, which under sbt is the build root, and the path exactly as captured when it does not sit underneath that directory

    fileName

    the simple name of the source file

    line

    the 1-based line number

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 clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. val fileName: String
  8. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  9. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  10. val line: Int
  11. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  13. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  14. def productElementNames: Iterator[String]
    Definition Classes
    Product
  15. val relativePath: String
  16. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  17. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  18. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  19. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped