Class: Yast::SnapperClass::Tree
- Inherits:
-
Object
- Object
- Yast::SnapperClass::Tree
- Defined in:
- ../../src/modules/Snapper.rb
Instance Attribute Summary (collapse)
-
- (Object) children
readonly
Returns the value of attribute children.
-
- (Object) name
Returns the value of attribute name.
-
- (Object) status
Returns the value of attribute status.
Instance Method Summary (collapse)
- - (Object) add(fullname, status)
- - (Boolean) created?
- - (Boolean) deleted?
- - (Object) each
- - (Object) find(fullname)
- - (Object) fullname
- - (Object) icon
-
- (Tree) initialize(name, parent)
constructor
A new instance of Tree.
Constructor Details
- (Tree) initialize(name, parent)
Returns a new instance of Tree
525 526 527 528 529 530 |
# File '../../src/modules/Snapper.rb', line 525 def initialize(name, parent) @name = name @status = 0 @parent = parent @children = [] end |
Instance Attribute Details
- (Object) children (readonly)
Returns the value of attribute children
523 524 525 |
# File '../../src/modules/Snapper.rb', line 523 def children @children end |
- (Object) name
Returns the value of attribute name
522 523 524 |
# File '../../src/modules/Snapper.rb', line 522 def name @name end |
- (Object) status
Returns the value of attribute status
522 523 524 |
# File '../../src/modules/Snapper.rb', line 522 def status @status end |
Instance Method Details
- (Object) add(fullname, status)
569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 |
# File '../../src/modules/Snapper.rb', line 569 def add(fullname, status) a, b = fullname.split("/", 2) return add(b, status) if fullname.start_with? "/" #leading / i = @children.index{ |x| x.name == a } if i if b @children[i].add(b, status) else @children[i].status = status end else subtree = Tree.new(a, self) if b subtree.add(b, status) else subtree.status = status end @children << subtree end end |
- (Boolean) created?
547 548 549 |
# File '../../src/modules/Snapper.rb', line 547 def created?() return @status & 0x01 != 0 end |
- (Boolean) deleted?
551 552 553 |
# File '../../src/modules/Snapper.rb', line 551 def deleted?() return @status & 0x02 != 0 end |
- (Object) each
532 533 534 535 536 537 538 539 540 541 |
# File '../../src/modules/Snapper.rb', line 532 def each() if @parent != nil yield self end @children.each do |subtree| subtree.each do |e| yield e end end end |
- (Object) find(fullname)
595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 |
# File '../../src/modules/Snapper.rb', line 595 def find(fullname) a, b = fullname.split("/", 2) return find(b) if fullname.start_with? "/" #leading / i = @children.index{ |x| x.name == a } if !i return nil end if !b return @children[i] else return @children[i].find(b) end end |
- (Object) fullname
543 544 545 |
# File '../../src/modules/Snapper.rb', line 543 def fullname() return @parent ? @parent.fullname() + "/" + @name : @name end |
- (Object) icon
556 557 558 559 560 561 562 563 564 565 566 |
# File '../../src/modules/Snapper.rb', line 556 def icon() if @status == 0 return "yast-gray-dot.png" elsif created? return "yast-green-dot.png" elsif deleted? return "yast-red-dot.png" else return "yast-yellow-dot.png" end end |