// File: /workspace/github_cpp_makefile_star2_O2/hzy1754785321[P]warehouse-manage-system/product.cpp
// Function: Products::search()
void Products::search()
{
		int flag,id,flag1;
		char name[32];
		char type[32];
		Products s;
		Product *p;
		cout << "\t\t\t\t\t1:by the name." << endl << "\t\t\t\t\t2:by the id." << endl << "\t\t\t\t\t3:by the type." << endl << "\t\t\t\t\t4:exit." << endl << "\t\t\t\t\tplease choice the search way:" ;
		cin >> flag;
		switch(flag)
		{
				case 1:cout << "\t\t\t\t\tpleae input the name:" ;
					   cin >> name;
					   p=searchName(name);
					   if(p!=NULL)
					   {
							   p->show();
							   break;
					   }
					   else
					   {
							   cout << "\t\t\t\t\twithout the name!" << endl;
							   break;
					   }
				case 2:cout << "\t\t\t\t\tplease input the id:" ;
					   cin >> id;
					   p=searchId(id);
					   if(p!=NULL)
					   {
							   p->show();
							   break;
					   }
					   else
					   {
							   cout << "\t\t\t\t\twithout the id!" << endl;
							   break;
					   }
				case 3:cout << "\t\t\t\t\t1:food" << endl << "\t\t\t\t\t2:clothes" << endl << "\t\t\t\t\t3:commodity" << endl << "\t\t\t\t\t4:exit" << endl << "\t\t\t\t\tplease choice the type:" ;
					   cin >> flag1;
					   switch(flag)
					   {
							   case 1:strcpy(type,"food");
									  s=searchType(type);
									  s.showAll();
									  break;
							   case 2:strcpy(type,"clothes");
									  s=searchType(type);
									  s.showAll();
									  break;
							   case 3:strcpy(type,"commodity");
									  s=searchType(type);
									  s.showAll();
									  break;
							   case 4:break;
							   default:cout << "\t\t\t\t\tinput error!" << endl;
									   break;
					   }
					   break;
				case 4:return ;
				default:
					   cout << "\t\t\t\t\tinput error!" << endl;
					   break;
		}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x80, %rsp
movq %rdi, %rbx
xorps %xmm0, %xmm0
movaps %xmm0, -0x30(%rbp)
andq $0x0, -0x20(%rbp)
movq 0x7f80(%rip), %rdi      # 0xcfd0
leaq 0x3205(%rip), %rsi      # 0x825c
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
leaq 0x3205(%rip), %rsi      # 0x8270
movq %rax, %rdi
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
leaq 0x35ea(%rip), %rsi      # 0x866c
movq %rax, %rdi
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
leaq 0x35e7(%rip), %rsi      # 0x8680
movq %rax, %rdi
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
leaq 0x3291(%rip), %rsi      # 0x8341
movq %rax, %rdi
callq 0x21c0
movq 0x7f21(%rip), %rdi      # 0xcfe0
leaq -0x14(%rbp), %rsi
callq 0x2100
leaq 0x30a7(%rip), %r14      # 0x8176
movl -0x14(%rbp), %eax
decl %eax
cmpl $0x3, %eax
ja 0x5234
leaq 0x33e8(%rip), %rcx      # 0x84cc
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x7edc(%rip), %rdi      # 0xcfd0
leaq 0x3592(%rip), %rsi      # 0x868d
callq 0x21c0
movq 0x7ed9(%rip), %rdi      # 0xcfe0
leaq -0x90(%rbp), %rsi
callq 0x3fc1
leaq -0x90(%rbp), %rsi
movq %rbx, %rdi
callq 0x4ee8
testq %rax, %rax
jne 0x516b
leaq 0x357a(%rip), %r14      # 0x86a8
jmp 0x5234
movq 0x7e96(%rip), %rdi      # 0xcfd0
leaq 0x326f(%rip), %rsi      # 0x83b0
callq 0x21c0
movq 0x7e93(%rip), %rdi      # 0xcfe0
leaq -0x18(%rbp), %rsi
callq 0x2100
leaq -0x18(%rbp), %rsi
movq %rbx, %rdi
callq 0x4ec4
testq %rax, %rax
je 0x522d
movq %rax, %rdi
callq 0x4896
jmp 0x52b0
movq 0x7e51(%rip), %rdi      # 0xcfd0
leaq 0x354e(%rip), %rsi      # 0x86d4
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
leaq 0x3546(%rip), %rsi      # 0x86e0
movq %rax, %rdi
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
leaq 0x3388(%rip), %rsi      # 0x8539
movq %rax, %rdi
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
leaq 0x3008(%rip), %rsi      # 0x81d0
movq %rax, %rdi
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
leaq 0x336b(%rip), %rsi      # 0x854a
movq %rax, %rdi
callq 0x21c0
movq 0x7df2(%rip), %rdi      # 0xcfe0
leaq -0x4c(%rbp), %rsi
callq 0x2100
movl -0x14(%rbp), %eax
decl %eax
cmpl $0x3, %eax
ja 0x5234
leaq 0x32d4(%rip), %rcx      # 0x84dc
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq -0x70(%rbp), %rdx
movb $0x0, 0x4(%rdx)
movl $0x646f6f66, (%rdx)     # imm = 0x646F6F66
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x4f2a
jmp 0x528f
leaq 0x348b(%rip), %r14      # 0x86bf
movq 0x7d95(%rip), %rdi      # 0xcfd0
movq %r14, %rsi
callq 0x21c0
movq %rax, %rdi
callq 0x20e0
jmp 0x52b0
movabsq $0x736568746f6c63, %rax # imm = 0x736568746F6C63
leaq -0x70(%rbp), %rdx
movq %rax, (%rdx)
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x4f2a
jmp 0x528f
movabsq $0x7469646f6d6d6f63, %rax # imm = 0x7469646F6D6D6F63
leaq -0x70(%rbp), %rdx
movq %rax, (%rdx)
movw $0x79, 0x8(%rdx)
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x4f2a
leaq -0x30(%rbp), %rdi
leaq -0x48(%rbp), %rbx
movq %rbx, %rsi
callq 0x561a
movq %rbx, %rdi
callq 0x55dc
leaq -0x30(%rbp), %rdi
callq 0x52e0
leaq -0x30(%rbp), %rdi
callq 0x55dc
addq $0x80, %rsp
popq %rbx
popq %r14
popq %rbp
retq
jmp 0x52cb
jmp 0x52cb
jmp 0x52cb
movq %rax, %rbx
leaq -0x30(%rbp), %rdi
callq 0x55dc
movq %rbx, %rdi
callq 0x2310
nop