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
- Alphabetic
- By Inheritance
- SourcePos
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- 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
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val fileName: String
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val line: Int
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val relativePath: String
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- 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()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)