Class: Audrey::Object

Inherits:
Object
  • Object
show all
Defined in:
lib/audrey.rb

Overview

Audrey::Object

Direct Known Subclasses

Collection, Scalar

Defined Under Namespace

Modules: Searchable Classes: Array, Collection, Custom, Hash, Root, Scalar

Class Method Summary collapse

Class Method Details

.aclassesObject



1545
1546
1547
1548
1549
1550
1551
1552
1553
# File 'lib/audrey.rb', line 1545

def self.aclasses
  rv = [self.to_s]
  
  descendants.each do |desc|
    rv.push desc.to_s
  end
  
  return rv
end

.descendantsObject



1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
# File 'lib/audrey.rb', line 1532

def self.descendants
  rv = []
  
  if instance_variable_defined?(:@children)
    @children.each do |child|
      rv.push child
      rv += child.descendants
    end
  end
  
  return rv
end

.fcoObject


fco, isolate



1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
# File 'lib/audrey.rb', line 1562

def self.fco()
  if not instance_variable_defined?(:@fco)
    @fco = superclass.fco
    
    if @fco.nil?
      raise 'must-override-fco: class=' + self.to_s
    end
  end
  
  return @fco
end

.inherited(desc) ⇒ Object


inherited, descendants, aclasses



1524
1525
1526
1527
1528
1529
1530
# File 'lib/audrey.rb', line 1524

def self.inherited(desc)
  if not instance_variable_defined?(:@children)
    @children = []
  end
  
  @children.push desc
end

.isolateObject



1574
1575
1576
1577
1578
1579
1580
# File 'lib/audrey.rb', line 1574

def self.isolate()
  if not instance_variable_defined?(:@isolate)
    @isolate = superclass.isolate
  end
  
  return @isolate
end