KiCad PCB EDA Suite
SEXPR::SEXPR_CHILDREN_ARG Class Reference

#include <sexpr.h>

Public Member Functions

 SEXPR_CHILDREN_ARG (int32_t aValue)
 
 SEXPR_CHILDREN_ARG (int64_t aValue)
 
 SEXPR_CHILDREN_ARG (double aValue)
 
 SEXPR_CHILDREN_ARG (const std::string &aValue)
 
 SEXPR_CHILDREN_ARG (const char *aValue)
 
 SEXPR_CHILDREN_ARG (const _OUT_STRING &aValue)
 
 SEXPR_CHILDREN_ARG (SEXPR *aPointer)
 

Private Types

enum class  Type : char {
  INT , DOUBLE , STRING , LONGINT ,
  SEXPR_STRING , SEXPR_ATOM
}
 

Private Attributes

Type type
 
union {
   int64_t   lint_value
 
   int32_t   int_value
 
   double   dbl_value
 
   SEXPR *   sexpr_ptr
 
   bool   symbol
 
u
 
std::string str_value
 

Friends

class SEXPR_LIST
 

Detailed Description

Definition at line 200 of file sexpr.h.

Member Enumeration Documentation

◆ Type

enum class SEXPR::SEXPR_CHILDREN_ARG::Type : char
strongprivate
Enumerator
INT 
DOUBLE 
STRING 
LONGINT 
SEXPR_STRING 
SEXPR_ATOM 

Definition at line 227 of file sexpr.h.

227: char { INT, DOUBLE, STRING, LONGINT, SEXPR_STRING, SEXPR_ATOM };

Constructor & Destructor Documentation

◆ SEXPR_CHILDREN_ARG() [1/7]

SEXPR::SEXPR_CHILDREN_ARG::SEXPR_CHILDREN_ARG ( int32_t  aValue)
inline

Definition at line 203 of file sexpr.h.

203 :
204 type( Type::INT ) { u.int_value = aValue; }
union SEXPR::SEXPR_CHILDREN_ARG::@37 u

References u.

◆ SEXPR_CHILDREN_ARG() [2/7]

SEXPR::SEXPR_CHILDREN_ARG::SEXPR_CHILDREN_ARG ( int64_t  aValue)
inline

Definition at line 206 of file sexpr.h.

206 :
207 type( Type::LONGINT ) { u.lint_value = aValue; }

References u.

◆ SEXPR_CHILDREN_ARG() [3/7]

SEXPR::SEXPR_CHILDREN_ARG::SEXPR_CHILDREN_ARG ( double  aValue)
inline

Definition at line 209 of file sexpr.h.

209 :
210 type( Type::DOUBLE ) { u.dbl_value = aValue; }

References u.

◆ SEXPR_CHILDREN_ARG() [4/7]

SEXPR::SEXPR_CHILDREN_ARG::SEXPR_CHILDREN_ARG ( const std::string &  aValue)
inline

Definition at line 212 of file sexpr.h.

212 :
213 type( Type::STRING ) { str_value = aValue; }
std::string str_value
Definition: sexpr.h:239

References str_value, and STRING.

◆ SEXPR_CHILDREN_ARG() [5/7]

SEXPR::SEXPR_CHILDREN_ARG::SEXPR_CHILDREN_ARG ( const char *  aValue)
inline

Definition at line 215 of file sexpr.h.

215 :
216 type( Type::STRING ) { str_value = aValue; }

References str_value, and STRING.

◆ SEXPR_CHILDREN_ARG() [6/7]

SEXPR::SEXPR_CHILDREN_ARG::SEXPR_CHILDREN_ARG ( const _OUT_STRING aValue)
inline

Definition at line 218 of file sexpr.h.

218 :
219 type( Type::SEXPR_STRING ) { str_value = aValue._String; u.symbol = aValue._Symbol; }

References SEXPR::_OUT_STRING::_String, SEXPR::_OUT_STRING::_Symbol, str_value, and u.

◆ SEXPR_CHILDREN_ARG() [7/7]

SEXPR::SEXPR_CHILDREN_ARG::SEXPR_CHILDREN_ARG ( SEXPR aPointer)
inline

Definition at line 221 of file sexpr.h.

221 :
222 type( Type::SEXPR_ATOM ) { u.sexpr_ptr = aPointer; }

References u.

Friends And Related Function Documentation

◆ SEXPR_LIST

friend class SEXPR_LIST
friend

Definition at line 225 of file sexpr.h.

Member Data Documentation

◆ dbl_value

double SEXPR::SEXPR_CHILDREN_ARG::dbl_value

Definition at line 234 of file sexpr.h.

Referenced by SEXPR::SEXPR_LIST::doAddChildren().

◆ int_value

int32_t SEXPR::SEXPR_CHILDREN_ARG::int_value

Definition at line 233 of file sexpr.h.

Referenced by SEXPR::SEXPR_LIST::doAddChildren().

◆ lint_value

int64_t SEXPR::SEXPR_CHILDREN_ARG::lint_value

Definition at line 232 of file sexpr.h.

Referenced by SEXPR::SEXPR_LIST::doAddChildren().

◆ sexpr_ptr

SEXPR* SEXPR::SEXPR_CHILDREN_ARG::sexpr_ptr

Definition at line 235 of file sexpr.h.

Referenced by SEXPR::SEXPR_LIST::doAddChildren().

◆ str_value

std::string SEXPR::SEXPR_CHILDREN_ARG::str_value
private

Definition at line 239 of file sexpr.h.

Referenced by SEXPR::SEXPR_LIST::doAddChildren(), and SEXPR_CHILDREN_ARG().

◆ symbol

bool SEXPR::SEXPR_CHILDREN_ARG::symbol

Definition at line 236 of file sexpr.h.

Referenced by SEXPR::SEXPR_LIST::doAddChildren().

◆ type

Type SEXPR::SEXPR_CHILDREN_ARG::type
private

Definition at line 228 of file sexpr.h.

Referenced by SEXPR::SEXPR_LIST::doAddChildren().

◆ 

union { ... } SEXPR::SEXPR_CHILDREN_ARG::u

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