Skip to content

Commit f05d8ad

Browse files
author
Dean Wampler
committed
Fixed bugs in the invariant examples
1 parent 550a939 commit f05d8ad

File tree

4 files changed

+20
-16
lines changed

4 files changed

+20
-16
lines changed

src/main/scala/progscala3/meta/Invariant.scala

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@ object invariant:
66
inline val ignore = false
77

88
inline def apply[T](
9-
inline predicate: => Boolean, message: => String = "")( // <2>
10-
inline block: => T): T =
9+
inline predicate: Boolean, // <2>
10+
inline message: String = "")(
11+
inline block: T): T =
1112
inline if !ignore then
1213
if !predicate then fail(predicate, message, block, "before") // <3>
1314
val result = block
@@ -17,9 +18,9 @@ object invariant:
1718
block
1819

1920
inline private def fail[T](
20-
inline predicate: => Boolean,
21-
inline message: => String,
22-
inline block: => T,
21+
inline predicate: Boolean,
22+
inline message: String,
23+
inline block: T,
2324
inline beforeAfter: String): Unit =
2425
${ failImpl('predicate, 'message, 'block, 'beforeAfter) } // <4>
2526

src/main/scala/progscala3/meta/performance/InvariantDisabled.scala

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,9 @@ object invariantDisabled:
77
inline val ignore = true
88

99
inline def apply[T](
10-
inline predicate: => Boolean, message: => String = "")(
11-
inline block: => T): T =
10+
inline predicate: Boolean,
11+
inline message: String = "")(
12+
inline block: T): T =
1213
inline if !ignore then
1314
if !predicate then fail(predicate, message, block, "before")
1415
val result = block
@@ -18,9 +19,9 @@ object invariantDisabled:
1819
block
1920

2021
inline private def fail[T](
21-
inline predicate: => Boolean,
22-
inline message: => String,
23-
inline block: => T,
22+
inline predicate: Boolean,
23+
inline message: String,
24+
inline block: T,
2425
inline beforeAfter: String): Unit =
2526
${ failImpl('predicate, 'message, 'block, 'beforeAfter) }
2627

src/main/scala/progscala3/meta/performance/InvariantEnabled.scala

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,9 @@ object invariantEnabled:
77
inline val ignore = false
88

99
inline def apply[T](
10-
inline predicate: => Boolean, message: => String = "")(
11-
inline block: => T): T =
10+
inline predicate: Boolean,
11+
inline message: String = "")(
12+
inline block: T): T =
1213
inline if !ignore then
1314
if !predicate then fail(predicate, message, block, "before")
1415
val result = block
@@ -18,9 +19,9 @@ object invariantEnabled:
1819
block
1920

2021
inline private def fail[T](
21-
inline predicate: => Boolean,
22-
inline message: => String,
23-
inline block: => T,
22+
inline predicate: Boolean,
23+
inline message: String,
24+
inline block: T,
2425
inline beforeAfter: String): Unit =
2526
${ failImpl('predicate, 'message, 'block, 'beforeAfter) }
2627

src/main/scala/progscala3/meta/performance/InvariantMinInline.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ object invariantMinInline:
77
val ignore = false
88

99
inline def apply[T](
10-
predicate: => Boolean, message: => String = "")(
10+
predicate: => Boolean,
11+
message: => String = "")(
1112
block: => T): T =
1213
if !ignore then
1314
if !predicate then fail(predicate, message, block, "before")

0 commit comments

Comments
 (0)