Class | Sass::Selector::AbstractSequence
In: | lib/sass/selector/abstract_sequence.rb
Parent: | Object

The abstract parent class of the various selector sequence classes.

All subclasses should implement a `members` method that returns an array of object that respond to `line=` and `filename=`.

### Methods

== eql? filename= hash line=

### Attributes

filename | [R] | The name of the file in which this selector was declared. @return [String, nil]
line | [R] | The line of the Sass template on which this selector was declared. @return [Fixnum]

### Public Instance methods

==(other)

Alias for eql?

eql?(other)

Checks equality between this and another object.

Subclasses should define `_eql?` rather than overriding this method, which handles checking class equality and hash equality.

@param other [Object] The object to test equality against @return [Boolean] Whether or not this is equal to `other`

[Source]

        # File lib/sass/selector/abstract_sequence.rb, line 56
    56:       def eql?(other)
    57:         other.class == self.class && other.hash == self.hash && _eql?(other)
    58:       end

filename=(filename)

Sets the name of the file in which this selector was declared, or `nil` if it was not declared in a file (e.g. on stdin). This also sets the filename for all child selectors.

@param filename [String, nil] @return [String, nil]

[Source]

        # File lib/sass/selector/abstract_sequence.rb, line 34
    34:       def filename=(filename)
    35:         members.each {|m| m.filename = filename}
    36:         @filename = filename
    37:       end

hash()

Returns a hash code for this sequence.

Subclasses should define `_hash` rather than overriding this method, which automatically handles memoizing the result.

@return [Fixnum]

[Source]

        # File lib/sass/selector/abstract_sequence.rb, line 45
    45:       def hash
    46:         @_hash ||= _hash
    47:       end

line=(line)

Sets the line of the Sass template on which this selector was declared. This also sets the line for all child selectors.

@param line [Fixnum] @return [Fixnum]

[Source]

        # File lib/sass/selector/abstract_sequence.rb, line 23
    23:       def line=(line)
    24:         members.each {|m| m.line = line}
    25:         @line = line
    26:       end

[Validate]