class Prct07::List

Attributes

cabeza[RW]
tail[RW]

Public Instance Methods

each() { |value| ... } click to toggle source
# File lib/prct07/bibliografia.rb, line 60
def each
    temp = @cabeza
    while (temp != @tail) do
        yield temp.value
        temp = temp.next
    end
end
pop() click to toggle source
# File lib/prct07/bibliografia.rb, line 80
def pop()
    if (@cabeza != tail)
        aux = @cabeza
        @cabeza = @cabeza.next
        @cabeza.anterior = nil
        aux.next = nil
        aux.value
    else
        @cabeza = nil
        @tail = nil
    end
end
pop_final() click to toggle source
# File lib/prct07/bibliografia.rb, line 104
def pop_final
    if (@cabeza != @tail)
        aux = @tail
        @tail = @tail.anterior
        @tail.next = nil
        aux.anterior = nil
        aux.value
    else
        @cabeza = nil
        @tail = nil
    end
end
push(nodo) click to toggle source
# File lib/prct07/bibliografia.rb, line 68
def push(nodo)
    if @cabeza == nil
        @cabeza = nodo
        @tail = nodo
    else
        nodo.next = @cabeza
        @cabeza.anterior = nodo
        @cabeza = nodo
        nodo.anterior = nil
    end
end
push_final(nodo) click to toggle source
# File lib/prct07/bibliografia.rb, line 93
def push_final(nodo)
    if @tail == nil
        @tail = nodo
        @cabeza = nodo
    else
        @tail.next = nodo
        nodo.anterior = @tail
        @tail = nodo
    end
end