// File: /workspace/github_cpp_makefile_star2_O2/DaCasBe[P]Gestion-de-asignaturas-mediante-listas-doblemente-enlazadas-ordenadas/funcionesAuxiliares.cpp
// Function: ed::consultarAsignatura(ed::Asignatura&)
void ed::consultarAsignatura(ed::Asignatura  &asignatura){
  if(asignatura.estaVacia()){ //La asignatura esta vacia
	std::cout << std::endl << ONIRED << "Error: no hay ningun estudiante cargado" << RESET << std::endl;
  }

  else{ //La asignatura no esta vacia
  	int i;
	Estudiante estudiante;

  	std::cout << IBLUE << "Codigo de la asignatura: " << asignatura.getCodigo() << std::endl;
  	std::cout << "Nombre de la asignatura: " << asignatura.getNombre() << std::endl;
 	std::cout << "Lista de estudiantes de la asignatura: " << GREEN << std::endl;

	//Mostramos la lista de estudiantes de la asignatura
  	for(i=0;i<asignatura.getNumeroEstudiantes();i++){
		estudiante=asignatura.getEstudiante(i);
		estudiante.escribirEstudiante();
		std::cout << std::endl;
  	}

	std::cout << RESET;
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0xc0, %rsp
movq %rdi, %rbx
movq (%rdi), %rax
callq *0x10(%rax)
testb %al, %al
je 0x45e4
movq 0x5a35(%rip), %rdi      # 0x9fd0
callq 0x20d0
leaq 0x2621(%rip), %rsi      # 0x6bc8
movq %rax, %rdi
callq 0x2160
leaq 0x29e8(%rip), %rsi      # 0x6f9e
movq %rax, %rdi
callq 0x2160
leaq 0x1a61(%rip), %rsi      # 0x6026
movq %rax, %rdi
callq 0x2160
movq %rax, %rdi
addq $0xc0, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
jmp 0x20d0
leaq 0x2716(%rip), %rsi      # 0x6d01
leaq -0x88(%rbp), %rdi
leaq -0x48(%rbp), %rdx
callq 0x20a0
leaq 0x26ff(%rip), %rsi      # 0x6d01
leaq -0x68(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x20a0
leaq -0xd8(%rbp), %rdi
leaq -0x88(%rbp), %rsi
leaq -0x68(%rbp), %rdx
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
callq 0x34aa
leaq -0x68(%rbp), %rdi
callq 0x2190
leaq -0x88(%rbp), %rdi
callq 0x2190
movq 0x5988(%rip), %rdi      # 0x9fd0
leaq 0x2977(%rip), %rsi      # 0x6fc6
callq 0x2160
leaq 0x2973(%rip), %rsi      # 0x6fce
movq %rax, %rdi
callq 0x2160
movq %rax, %r14
movq (%rbx), %rax
movq %rbx, %rdi
callq *(%rax)
movq %r14, %rdi
movl %eax, %esi
callq 0x2220
movq %rax, %rdi
callq 0x20d0
movq 0x5949(%rip), %rdi      # 0x9fd0
leaq 0x295a(%rip), %rsi      # 0x6fe8
callq 0x2160
movq %rax, %r14
movq (%rbx), %rax
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq *0x8(%rax)
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x2140
movq %rax, %rdi
callq 0x20d0
leaq -0x48(%rbp), %rdi
callq 0x2190
movq 0x5909(%rip), %rdi      # 0x9fd0
leaq 0x2934(%rip), %rsi      # 0x7002
callq 0x2160
leaq 0x27ac(%rip), %rsi      # 0x6e86
movq %rax, %rdi
callq 0x2160
movq %rax, %rdi
callq 0x20d0
xorl %r14d, %r14d
leaq -0xd8(%rbp), %r15
movq 0x58d5(%rip), %r12      # 0x9fd0
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x18(%rax)
cmpl %eax, %r14d
jge 0x4735
movq (%rbx), %rax
movq %rbx, %rdi
movl %r14d, %esi
callq *0x30(%rax)
movq %r15, %rdi
movq %rax, %rsi
callq 0x26ea
movq %r15, %rdi
callq 0x2566
movq %r12, %rdi
callq 0x20d0
incl %r14d
jmp 0x46fb
movq 0x5894(%rip), %rdi      # 0x9fd0
leaq 0x18e3(%rip), %rsi      # 0x6026
callq 0x2160
leaq -0xd8(%rbp), %rdi
callq 0x3322
addq $0xc0, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x2190
jmp 0x478a
jmp 0x479a
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0x2190
jmp 0x479d
movq %rax, %rbx
jmp 0x47a9
movq %rax, %rbx
leaq -0x88(%rbp), %rdi
callq 0x2190
jmp 0x47a9
jmp 0x479a
movq %rax, %rbx
leaq -0xd8(%rbp), %rdi
callq 0x3322
movq %rbx, %rdi
callq 0x2230
movq %rax, %rdi
callq 0x336e