Scarab  v2.9.1
Project 8 C++ Utility Library
Public Types | Static Public Member Functions | Public Attributes | Protected Member Functions | List of all members
Animal Struct Reference
Inheritance diagram for Animal:
Inheritance graph

Public Types

enum  Kind {
  Unknown = 0, Dog = 100, Labrador, Chihuahua,
  LastDog = 199, Cat = 200, Panther, LastCat = 299
}
 

Static Public Member Functions

static const std::type_info * type_of_kind (Kind kind)
 
static std::string name_of_kind (Kind kind)
 

Public Attributes

const Kind kind
 
const std::string name
 

Protected Member Functions

 Animal (const std::string &_name, Kind _kind)
 

Detailed Description

Definition at line 13 of file test_tagbased_polymorphic.cpp.

Member Enumeration Documentation

◆ Kind

enum Kind
strong
Enumerator
Unknown 
Dog 
Labrador 
Chihuahua 
LastDog 
Cat 
Panther 
LastCat 

Definition at line 15 of file test_tagbased_polymorphic.cpp.

Constructor & Destructor Documentation

◆ Animal()

Animal ( const std::string &  _name,
Kind  _kind 
)
inlineprotected

Definition at line 27 of file test_tagbased_polymorphic.cpp.

Member Function Documentation

◆ name_of_kind()

std::string name_of_kind ( Kind  kind)
static

Definition at line 100 of file test_tagbased_polymorphic.cpp.

◆ type_of_kind()

const std::type_info * type_of_kind ( Kind  kind)
static

Definition at line 80 of file test_tagbased_polymorphic.cpp.

Member Data Documentation

◆ kind

const Kind kind

Definition at line 23 of file test_tagbased_polymorphic.cpp.

◆ name

const std::string name

Definition at line 24 of file test_tagbased_polymorphic.cpp.


The documentation for this struct was generated from the following file: