Skip to content

Commit 803961d

Browse files
author
Dean Wampler
committed
Removed use of postfix expressions.
1 parent f9e8d54 commit 803961d

File tree

3 files changed

+14
-19
lines changed

3 files changed

+14
-19
lines changed

src/main/scala/progscala3/dsls/payroll/internal/DSL.scala

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,38 @@
11
// src/main/scala/progscala3/dsls/payroll/internal/DSL.scala
22
package progscala3.dsls.payroll.internal
3-
import scala.language.postfixOps // <1>
43
import progscala3.dsls.payroll.*
54
import progscala3.contexts.accounting.*
65

76
@main def TryPayroll =
8-
import dsl.* // <2>
9-
val biweeklyDeductions = biweekly { deduct => // <3>
10-
deduct federal_tax (25.0 percent)
11-
deduct state_tax (5.0 percent)
12-
deduct insurance_premiums (500.0 dollars)
13-
deduct retirement_savings (10.0 percent)
7+
import dsl.* // <1>
8+
val biweeklyDeductions = biweekly { deduct => // <2>
9+
deduct federal_tax 25.0.percent
10+
deduct state_tax 5.0.percent
11+
deduct insurance_premiums 500.0.dollars
12+
deduct retirement_savings 10.0.percent
1413
}
1514

16-
println(biweeklyDeductions) // <4>
15+
println(biweeklyDeductions) // <3>
1716
val annualGross = Dollars(100000.0)
1817
val gross = biweeklyDeductions.gross(annualGross)
1918
val net = biweeklyDeductions.net(annualGross)
2019
print(f"Biweekly pay (annual: $annualGross): ")
2120
println(f"Gross: $gross, Net: $net")
2221

2322
object dsl:
24-
def biweekly( // <5>
23+
def biweekly( // <4>
2524
db: DeductionsBuilder => DeductionsBuilder): Deductions =
2625
db(DeductionsBuilder("Biweekly", 26)).deductions
2726

28-
case class DeductionsBuilder( // <6>
27+
case class DeductionsBuilder( // <5>
2928
name: String,
3029
annualPayPeriods: Int):
3130

3231
private var all: Vector[Deduction] = Vector.empty
3332

3433
def deductions: Deductions = Deductions(name, annualPayPeriods, all)
3534

36-
infix def federal_tax(amount: Percentage): DeductionsBuilder = // <7>
35+
infix def federal_tax(amount: Percentage): DeductionsBuilder = // <6>
3736
all = all :+ PercentageDeduction("federal taxes", amount)
3837
this
3938

src/test/scala/progscala3/dsls/payroll/PayrollSuite.scala

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import progscala3.dsls.payroll.dsc
55
import progscala3.contexts.accounting.*
66
import munit.FunSuite
77
import org.scalacheck.*
8-
import scala.language.postfixOps
98

109
/**
1110
* ScalaCheck example driven by MUnit
@@ -17,7 +16,6 @@ class PayrollSuite extends FunSuite:
1716

1817
test("Percentage can be constructed with a floating point literal") {
1918
assert(0.25.percent == Percentage(0.25))
20-
assert((0.25 percent) == Percentage(0.25))
2119
assert(1.123456e3.percent == Percentage(1.123456e3))
2220
}
2321

@@ -47,7 +45,6 @@ class PayrollSuite extends FunSuite:
4745

4846
test("Dollars can be constructed with a floating point literal") {
4947
assert(0.25.dollars == Dollars(0.25))
50-
assert((0.25 dollars) == Dollars(0.25))
5148
assert(1.123456e3.dollars == Dollars(1.123456e3))
5249
}
5350

src/test/scala/progscala3/dsls/payroll/internal/DSLPropertiesSuite.scala

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import munit.ScalaCheckSuite
55
import org.scalacheck.*
66
import progscala3.dsls.payroll.*
77
import progscala3.contexts.accounting.*
8-
import scala.language.postfixOps
98

109
/**
1110
* ScalaCheck example driven by MUnit
@@ -16,10 +15,10 @@ class DSLPropertiesSuite extends ScalaCheckSuite:
1615
import Prop.forAll
1716

1817
val biweeklyDeductions = biweekly { deduct =>
19-
deduct.federal_tax (25.0 percent)
20-
deduct.state_tax (5.0 percent)
21-
deduct.insurance_premiums(500.0 dollars)
22-
deduct.retirement_savings(10.0 percent)
18+
deduct.federal_tax (25.0.percent)
19+
deduct.state_tax (5.0.percent)
20+
deduct.insurance_premiums(500.0.dollars)
21+
deduct.retirement_savings(10.0.percent)
2322
}
2423

2524
def within(d1: Dollars, d2: Dollars): Boolean =

0 commit comments

Comments
 (0)