class Sass::Script::Interpolation
@see StringInterpolation
A SassScript object representing ‘#{}` interpolation outside a string.
def _perform(environment)
-
(Sass::Script::String)
- The SassScript string that is the value of the interpolation
Parameters:
-
environment
(Sass::Environment
) -- The environment in which to evaluate the SassScript
def _perform(environment) res = "" res << @before.perform(environment).to_s if @before res << " " if @before && @whitespace_before val = @mid.perform(environment) res << (val.is_a?(Sass::Script::String) ? val.value : val.to_s) res << " " if @after && @whitespace_after res << @after.perform(environment).to_s if @after opts(Sass::Script::String.new(res)) end
def children
- See: Node#children -
See: #initialize -
Returns:
-
(Array
-)
def children [@before, @mid, @after].compact end
def deep_copy
- See: Node#deep_copy -
def deep_copy node = dup node.instance_variable_set('@before', @before.deep_copy) if @before node.instance_variable_set('@mid', @mid.deep_copy) node.instance_variable_set('@after', @after.deep_copy) if @after node end
def initialize(before, mid, after, wb, wa, originally_text = false)
-
originally_text
(Boolean
) -- -
wa
(Boolean
) -- Whether there was whitespace between `}` and `after` -
wb
(Boolean
) -- Whether there was whitespace between `before` and `#{` -
after
(Node
) -- The SassScript after the interpolation -
mid
(Node
) -- The SassScript within the interpolation -
before
(Node
) -- The SassScript before the interpolation
def initialize(before, mid, after, wb, wa, originally_text = false) @before = before @mid = mid @after = after @whitespace_before = wb @whitespace_after = wa @originally_text = originally_text end
def inspect
-
(String)
- A human-readable s-expression representation of the interpolation
def inspect "(interpolation #{@before.inspect} #{@mid.inspect} #{@after.inspect})" end
def to_sass(opts = {})
- See: Node#to_sass -
def to_sass(opts = {}) res = "" res << @before.to_sass(opts) if @before res << ' ' if @before && @whitespace_before res << '#{' unless @originally_text res << @mid.to_sass(opts) res << '}' unless @originally_text res << ' ' if @after && @whitespace_after res << @after.to_sass(opts) if @after res end