Module: Compass::SassExtensions::Functions::Math

Included in:
Sass::Script::Functions
Defined in:
lib/compass/sass_extensions/functions/math.rb

Instance Method Summary collapse

Instance Method Details

#cos(number) ⇒ Object



13
14
15
# File 'lib/compass/sass_extensions/functions/math.rb', line 13

def cos(number)
  trig(:cos, number)
end

#eObject



23
24
25
# File 'lib/compass/sass_extensions/functions/math.rb', line 23

def e()
  Sass::Script::Number.new(Math::E)
end

#logarithm(number, base = e) ⇒ Object

Raises:

  • (Sass::SyntaxError)


28
29
30
31
32
33
34
35
# File 'lib/compass/sass_extensions/functions/math.rb', line 28

def logarithm(number, base = e )
  assert_type number, :Number
  assert_type base, :Number
  raise Sass::SyntaxError, "base to logarithm must be unitless." unless base.unitless?

  result = Math.log(number.value, base.value) rescue Math.log(number.value) / Math.log(base.value)
  Sass::Script::Number.new(result, number.numerator_units, number.denominator_units)
end

#piObject



3
4
5
# File 'lib/compass/sass_extensions/functions/math.rb', line 3

def pi()
  Sass::Script::Number.new(Math::PI)
end

#pow(number, exponent) ⇒ Object

Raises:

  • (Sass::SyntaxError)


47
48
49
50
51
52
# File 'lib/compass/sass_extensions/functions/math.rb', line 47

def pow(number, exponent)
  assert_type number, :Number
  assert_type exponent, :Number
  raise Sass::SyntaxError, "exponent to pow must be unitless." unless exponent.unitless?
  Sass::Script::Number.new(number.value**exponent.value, number.numerator_units, number.denominator_units)
end

#sin(number) ⇒ Object



8
9
10
# File 'lib/compass/sass_extensions/functions/math.rb', line 8

def sin(number)
  trig(:sin, number)
end

#sqrt(number) ⇒ Object Also known as: square_root



39
40
41
# File 'lib/compass/sass_extensions/functions/math.rb', line 39

def sqrt(number)
  numeric_transformation(number) { |n| Math.sqrt(n) }
end

#tan(number) ⇒ Object



18
19
20
# File 'lib/compass/sass_extensions/functions/math.rb', line 18

def tan(number)
  trig(:tan, number)
end