Class: Arel::Nodes::SelectCore

### Home Classes Methods

### In Files

- lib/arel/nodes/select_core.rb

### Parent

Arel::Nodes::Node

### Methods

- ::new
- #==
- #eql?
- #from
- #from=
- #froms
- #froms=
- #hash
- #initialize_copy

### Files

- History.txt
- MIT-LICENSE.txt

### Class/Module Index

Quicksearch

- Arel
- Arel::AliasPredication
- Arel::Attributes
- Arel::Attributes::Attribute
- Arel::Attributes::Boolean
- Arel::Attributes::Decimal
- Arel::Attributes::Float
- Arel::Attributes::Integer
- Arel::Attributes::String
- Arel::Attributes::Time
- Arel::Attributes::Undefined
- Arel::Collectors
- Arel::Collectors::Bind
- Arel::Collectors::PlainString
- Arel::Collectors::SQLString
- Arel::Crud
- Arel::DeleteManager
- Arel::Expressions
- Arel::FactoryMethods
- Arel::InsertManager
- Arel::Math
- Arel::Nodes
- Arel::Nodes::Addition
- Arel::Nodes::And
- Arel::Nodes::Ascending
- Arel::Nodes::Binary
- Arel::Nodes::BindParam
- Arel::Nodes::Count
- Arel::Nodes::CurrentRow
- Arel::Nodes::DeleteStatement
- Arel::Nodes::Descending
- Arel::Nodes::Distinct
- Arel::Nodes::Division
- Arel::Nodes::DoesNotMatch
- Arel::Nodes::Equality
- Arel::Nodes::Extract
- Arel::Nodes::False
- Arel::Nodes::Following
- Arel::Nodes::FullOuterJoin
- Arel::Nodes::Function
- Arel::Nodes::Grouping
- Arel::Nodes::In
- Arel::Nodes::InfixOperation
- Arel::Nodes::InnerJoin
- Arel::Nodes::InsertStatement
- Arel::Nodes::JoinSource
- Arel::Nodes::Matches
- Arel::Nodes::Multiplication
- Arel::Nodes::NamedFunction
- Arel::Nodes::NamedWindow
- Arel::Nodes::Node
- Arel::Nodes::OuterJoin
- Arel::Nodes::Over
- Arel::Nodes::Preceding
- Arel::Nodes::Range
- Arel::Nodes::RightOuterJoin
- Arel::Nodes::Rows
- Arel::Nodes::SelectCore
- Arel::Nodes::SelectStatement
- Arel::Nodes::SqlLiteral
- Arel::Nodes::StringJoin
- Arel::Nodes::Subtraction
- Arel::Nodes::TableAlias
- Arel::Nodes::True
- Arel::Nodes::Unary
- Arel::Nodes::UnqualifiedColumn
- Arel::Nodes::UpdateStatement
- Arel::Nodes::Values
- Arel::Nodes::Window
- Arel::Nodes::With
- Arel::Nodes::WithRecursive
- Arel::OrderPredications
- Arel::Predications
- Arel::SelectManager
- Arel::Table
- Arel::TreeManager
- Arel::UpdateManager
- Arel::Visitors
- Arel::Visitors::BindSubstitute
- Arel::Visitors::BindVisitor
- Arel::Visitors::DepthFirst
- Arel::Visitors::Dot
- Arel::Visitors::IBM_DB
- Arel::Visitors::Informix
- Arel::Visitors::MSSQL
- Arel::Visitors::MySQL
- Arel::Visitors::Oracle
- Arel::Visitors::PostgreSQL
- Arel::Visitors::Reduce
- Arel::Visitors::SQLite
- Arel::Visitors::ToSql
- Arel::Visitors::Visitor
- Arel::Visitors::WhereSql
- Arel::WindowPredications

No matching classes.

# Arel::Nodes::SelectCore

### Attributes

groups[RW]
having[RW]
projections[RW]
set_quantifier[RW]
source[RW]
top[RW]
wheres[RW]
windows[RW]

### Public Class Methods

new() click to toggle source

    # File lib/arel/nodes/select_core.rb, line 7
    def initialize
      super()
      @source         = JoinSource.new nil
      @top            = nil

      # http://savage.net.au/SQL/sql-92.bnf.html#set%20quantifier
      @set_quantifier = nil
      @projections    = []
      @wheres         = []
      @groups         = []
      @having         = nil
      @windows        = []
    end

### Public Instance Methods

==(other) click to toggle source
Alias for: eql?
eql?(other) click to toggle source

    # File lib/arel/nodes/select_core.rb, line 49
    def eql? other
      self.class == other.class &&
        self.source == other.source &&
        self.top == other.top &&
        self.set_quantifier == other.set_quantifier &&
        self.projections == other.projections &&
        self.wheres == other.wheres &&
        self.groups == other.groups &&
        self.having == other.having &&
        self.windows == other.windows
    end

Also aliased as: ==
from() click to toggle source

    # File lib/arel/nodes/select_core.rb, line 21
    def from
      @source.left
    end

Also aliased as: froms
from=(value) click to toggle source

    # File lib/arel/nodes/select_core.rb, line 25
    def from= value
      @source.left = value
    end

Also aliased as: froms=
froms() click to toggle source
Alias for: from
froms=(value) click to toggle source
Alias for: from=
hash() click to toggle source

    # File lib/arel/nodes/select_core.rb, line 42
    def hash
      [
        @source, @top, @set_quantifier, @projections,
        @wheres, @groups, @having, @windows
      ].hash
    end

initialize_copy(other) click to toggle source

    # File lib/arel/nodes/select_core.rb, line 32
    def initialize_copy other
      super
      @source      = @source.clone if @source
      @projections = @projections.clone
      @wheres      = @wheres.clone
      @groups      = @groups.clone
      @having      = @having.clone if @having
      @windows     = @windows.clone
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.