v. 1.0.4, add vh,vw measurements
Took 47 seconds
This commit is contained in:
31
src/commonMain/kotlin/nl/astraeus/css/properties/Calc.kt
Normal file
31
src/commonMain/kotlin/nl/astraeus/css/properties/Calc.kt
Normal file
@@ -0,0 +1,31 @@
|
||||
package nl.astraeus.css.properties
|
||||
|
||||
fun calc(expression: CalcExpression) = Calc(expression)
|
||||
|
||||
infix operator fun CalcExpression.plus(other: CalcExpression) = CompoundCalcExpression(
|
||||
this,
|
||||
"+",
|
||||
other
|
||||
)
|
||||
|
||||
infix operator fun CalcExpression.minus(other: CalcExpression) = CompoundCalcExpression(
|
||||
this,
|
||||
"-",
|
||||
other
|
||||
)
|
||||
|
||||
interface CalcExpression
|
||||
|
||||
class CompoundCalcExpression(
|
||||
val left: CalcExpression,
|
||||
val operator: String,
|
||||
val right: CalcExpression
|
||||
): CalcExpression {
|
||||
override fun toString(): String {
|
||||
return "$left $operator $right"
|
||||
}
|
||||
}
|
||||
|
||||
class Calc(
|
||||
expression: CalcExpression
|
||||
) : CssProperty(expression.toString())
|
||||
Reference in New Issue
Block a user