Class: BiblioRefs::Libro

Inherits:
Referencia show all
Defined in:
lib/biblio_refs/libro.rb

Direct Known Subclasses

Articulo

Instance Attribute Summary collapse

Attributes inherited from Referencia

#autores, #editorial, #fecha_publicacion, #isbn, #num_edicion, #serie, #titulo

Instance Method Summary collapse

Methods inherited from Referencia

#<=>, #==, #author, #autores_to_s, #comparar_autores, #editorial_to_s, #formato_apa, #info, #isbn_to_s, nuevo, #num_edicion_to_s, #serie_to_s, #title, #titulo_to_s

Constructor Details

#initialize(autores, anyo_publicacion, titulo, subtitulo, num_edicion, volumen, editorial, isbn) ⇒ Libro

Constructor de la clase Libro



7
8
9
10
11
# File 'lib/biblio_refs/libro.rb', line 7

def initialize(autores, anyo_publicacion, titulo, subtitulo, num_edicion, volumen, editorial, isbn)
  super(autores, titulo, editorial, num_edicion, Date.parse('1st January #{anyo_publicacion}'), isbn)
  @subtitulo = subtitulo
  @volumen = volumen
end

Instance Attribute Details

#subtituloObject

Returns the value of attribute subtitulo.



4
5
6
# File 'lib/biblio_refs/libro.rb', line 4

def subtitulo
  @subtitulo
end

#volumenObject

Returns the value of attribute volumen.



4
5
6
# File 'lib/biblio_refs/libro.rb', line 4

def volumen
  @volumen
end

Instance Method Details

#book(libro = {}) ⇒ Object

Método que asigna los valores partículares del objeto Libro creado mediante DSL



14
15
16
17
18
# File 'lib/biblio_refs/libro.rb', line 14

def book(libro = {})
  @subtitulo = libro[:name]
  @volumen = libro[:volume]
  @fecha_publicacion = Date.parse('1st January #{libro[:year]}')
end

#fecha_publicacion_to_sObject

Método que devuelve una cadena de carácteres formateada de la fecha de publicación



21
22
23
# File 'lib/biblio_refs/libro.rb', line 21

def fecha_publicacion_to_s
  fecha_publicacion.year.to_s
end

#to_sObject

Método que devuelve una cadena de carácteres formateada de los objetos de la clase Libro



26
27
28
# File 'lib/biblio_refs/libro.rb', line 26

def to_s
  formato_apa.chop + ": " + subtitulo.to_s.capitalize + " (" + num_edicion_to_s + ")(" + volumen.to_s + "). Lugar de publicación: " + editorial_to_s.capitalize + "." 
end