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