class Lista

Attributes

head[RW]
size[RW]
tail[RW]

Public Class Methods

new() click to toggle source
# File lib/MenuDieta/lista.rb, line 6
def initialize()
    @head = nil
    @tail = nil
    @size = 0
end

Public Instance Methods

each() { |nil| ... } click to toggle source
# File lib/MenuDieta/lista.rb, line 74
def each
    if(@head == nil) && (@tail == nil)
        yield nil
    elseif(@head == @tail)
        yield @head-value
    else
        while(@head != nil)
            yield @head.value
            @head = @head.next
        end
    end
end
extractBeginning() click to toggle source
# File lib/MenuDieta/lista.rb, line 56
def extractBeginning()
    aux = self.head.next
    aux.prev = nil
    self.head.next = nil
    self.head = aux
    aux = nil
    self.size -= 1
end
extractEnd() click to toggle source
# File lib/MenuDieta/lista.rb, line 65
def extractEnd()
    aux = self.tail.prev
    self.tail.prev = nil
    aux.next = nil
    self.tail = aux
    aux = nil
    self.size -= 1
end
insert(nodo) click to toggle source
# File lib/MenuDieta/lista.rb, line 12
def insert(nodo)
    if(head == nil)
        self.head = nodo
        self.size += 1
    else
       nodo.next = head
       self.head = nodo
       self.size += 1
    end
end
insertBeginning(nodo) click to toggle source
# File lib/MenuDieta/lista.rb, line 30
def insertBeginning(nodo)
   if(head == nil) 
        self.head = nodo
        self.tail = nodo
        self.size += 1
   else
       self.head.prev = nodo
       nodo.next = self.head
       self.head = nodo
       self.size += 1
   end    
end
insertEnd(nodo) click to toggle source
# File lib/MenuDieta/lista.rb, line 43
def insertEnd(nodo)
   if(head == nil) 
        self.head = nodo
        self.tail = nodo
        self.size += 1
   else
       self.tail.next = nodo
       nodo.prev = self.tail
       self.tail = nodo
       self.size += 1
   end    
end
pop() click to toggle source
# File lib/MenuDieta/lista.rb, line 23
def pop()
    aux = self.head
    self.head = self.head.next
    aux.next = nil
    self.size =self.size - 1
end