Qucs-core  0.0.19
Defines | Functions | Variables
parse_spice.y File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include "check_spice.h"
Include dependency graph for parse_spice.y:

Go to the source code of this file.

Defines

#define YYERROR_VERBOSE   42
#define YYDEBUG   1
#define YYMAXDEPTH   1000000

Functions

int spice_checker (void)
int spice_parse (void)
int spice_error (const char *)
int spice_lex (void)
int spice_lex_destroy (void)
void spice_destroy (void)
void spice_add_last_hint (struct value_t *, int)
void spice_set_last_hint (struct value_t *, int)
struct value_tnetlist_append_values (struct value_t *, struct value_t *)
struct definition_tspice_checker_intern (struct definition_t *)
static __END_DECLS char * spice_toupper (char *str)
static struct definition_tspice_create_device (char *instance)
static struct definition_tspice_create_action (char *type, char *instance)
static struct value_tspice_create_str_value (char *value, int hint)
static struct value_tspice_create_val_value (char *value, int hint)
static struct value_tspice_create_par_value (char *key, char *value)
static void spice_append_str_value (struct definition_t *def, char *value, int hint)
static struct value_tspice_append_str_values (struct value_t *values, char *value, int hint)
static void spice_append_val_value (struct definition_t *def, char *value, int hint)
static struct value_tspice_append_val_values (struct value_t *values, char *value, int hint)
 spice_append_str_value ($$, $2, HINT_NODE)
 spice_append_val_value ($$, $4, HINT_NUMBER)
 spice_add_last_hint ($2, HINT_MSTOP)
int spice_error (const char *error)

Variables

union {
   char *   ident
   char *   str
   double   d
   struct definition_t *   definition
   struct definition_t *   subcircuit
   struct value_t *   value
spice_title
InputList __pad0__
InputLine __pad1__
 definition_root = $1
DefinitionLine __pad2__
 values = netlist_append_values ($$->values, $5)
TC_Value_1 __pad3__
TC_Value_2 __pad4__ = spice_create_par_value ($1, $2)
IC_Condition_1 __pad5__ = spice_create_par_value ($1, $2) spice_append_val_values ($$, $3, HINT_NUMBER)
IC_Condition_2 __pad6__ = spice_append_str_values ($$, $1, HINT_NAME) spice_append_val_values ($$, $2, HINT_NUMBER)
IC_Condition_3 __pad7__ = spice_append_str_values ($$, $1, HINT_NAME) spice_append_val_values ($$, $2, HINT_NUMBER) spice_append_val_values ($$, $3, HINT_NUMBER)
IC_Condition_4 __pad8__ = spice_append_str_values ($$, $1, HINT_NAME) spice_append_val_values ($$, $2, HINT_NUMBER) spice_append_val_values ($$, $3, HINT_NUMBER) spice_append_val_values ($$, $4, HINT_NUMBER)
Output_Range __pad9__ = spice_append_str_values ($$, $1, HINT_NAME) spice_append_val_values ($$, $2, HINT_NUMBER) spice_append_val_values ($$, $3, HINT_NUMBER) spice_append_val_values ($$, $4, HINT_NUMBER) spice_append_val_values ($$, $5, HINT_NUMBER)
VOLTAGE_Output __pad10__ = spice_append_val_values ($$, $1, HINT_NUMBER) spice_append_val_values ($$, $2, HINT_NUMBER)
IV_Reference __pad11__ = spice_append_str_values ($$, strdup ("V"), HINT_NAME | HINT_MSTART) spice_append_str_values ($$, $1, HINT_NODE | HINT_MSTOP)
CURRENT_Output __pad12__
PLOT_List __pad13__ = spice_append_str_values ($$, $1, HINT_NAME | HINT_MSTART) spice_append_str_values ($$, $2, HINT_NAME | HINT_MSTOP)
SWITCH_State __pad14__
PRINT_List __pad15__
OPTIONS_List __pad16__
MODEL_List __pad17__
NODESET_List __pad18__
DEVICE_List_1 __pad19__
DEVICE_List_2 __pad20__
DEVICE_List_3 __pad21__
MODEL_Ident __pad22__
DC_List __pad23__
Value __pad24__ = spice_append_str_values ($$, $1, HINT_NAME | HINT_MSTART) spice_append_val_values ($$, $2, HINT_NUMBER) spice_append_val_values ($$, $3, HINT_NUMBER) spice_append_val_values ($$, $4, HINT_NUMBER | HINT_MSTOP)
Node __pad25__
FH_Node __pad26__
PairList __pad27__
ValueList __pad28__
NodeValueList __pad29__
NodeList __pad30__
VSourceList __pad31__
Expr __pad32__
Expr HINT_NAME HINT_MSTART
 next = $2
ExprList __pad33__
Subcircuit __pad34__
BeginSub __pad35__ = $1 NULL
SubBody __pad36__
SubCkt_Ident __pad37__
EndSub __pad38__
SubBodyLine __pad39__

Define Documentation

#define YYDEBUG   1

Definition at line 42 of file parse_spice.y.

#define YYERROR_VERBOSE   42

Definition at line 41 of file parse_spice.y.

#define YYMAXDEPTH   1000000

Definition at line 43 of file parse_spice.y.


Function Documentation

struct value_t* netlist_append_values ( struct value_t ,
struct value_t  
) [read]

Definition at line 231 of file check_spice.cpp.

void spice_add_last_hint ( struct value_t ,
int   
)

Definition at line 3047 of file check_spice.cpp.

static void spice_append_str_value ( struct definition_t def,
char *  value,
int  hint 
) [static]

Definition at line 102 of file parse_spice.y.

spice_append_str_value ( $$  ,
2,
HINT_NODE   
)
static struct value_t* spice_append_str_values ( struct value_t values,
char *  value,
int  hint 
) [static, read]

Definition at line 109 of file parse_spice.y.

static void spice_append_val_value ( struct definition_t def,
char *  value,
int  hint 
) [static]

Definition at line 116 of file parse_spice.y.

spice_append_val_value ( $$  ,
4,
HINT_NUMBER   
)
static struct value_t* spice_append_val_values ( struct value_t values,
char *  value,
int  hint 
) [static, read]

Definition at line 123 of file parse_spice.y.

int spice_checker ( void  )

Definition at line 3071 of file check_spice.cpp.

struct definition_t* spice_checker_intern ( struct definition_t ) [read]

Definition at line 3061 of file check_spice.cpp.

static struct definition_t* spice_create_action ( char *  type,
char *  instance 
) [static, read]

Definition at line 67 of file parse_spice.y.

static struct definition_t* spice_create_device ( char *  instance) [static, read]

Definition at line 56 of file parse_spice.y.

static struct value_t* spice_create_par_value ( char *  key,
char *  value 
) [static, read]

Definition at line 95 of file parse_spice.y.

static struct value_t* spice_create_str_value ( char *  value,
int  hint 
) [static, read]

Definition at line 78 of file parse_spice.y.

static struct value_t* spice_create_val_value ( char *  value,
int  hint 
) [static, read]

Definition at line 86 of file parse_spice.y.

void spice_destroy ( void  )

Definition at line 1194 of file check_spice.cpp.

int spice_error ( const char *  )

Definition at line 958 of file parse_spice.y.

int spice_error ( const char *  error)

Definition at line 958 of file parse_spice.y.

int spice_lex ( void  )
int spice_lex_destroy ( void  )
int spice_parse ( void  )
void spice_set_last_hint ( struct value_t ,
int   
)

Definition at line 3054 of file check_spice.cpp.

static __END_DECLS char* spice_toupper ( char *  str) [static]

Definition at line 48 of file parse_spice.y.


Variable Documentation

InputList __pad0__

Definition at line 194 of file parse_spice.y.

Definition at line 658 of file parse_spice.y.

IV_Reference __pad11__ = spice_append_str_values ($$, strdup ("V"), HINT_NAME | HINT_MSTART) spice_append_str_values ($$, $1, HINT_NODE | HINT_MSTOP)

Definition at line 667 of file parse_spice.y.

CURRENT_Output __pad12__

Definition at line 690 of file parse_spice.y.

Definition at line 692 of file parse_spice.y.

SWITCH_State __pad14__

Definition at line 723 of file parse_spice.y.

PRINT_List __pad15__

Definition at line 732 of file parse_spice.y.

OPTIONS_List __pad16__

Definition at line 741 of file parse_spice.y.

MODEL_List __pad17__

Definition at line 752 of file parse_spice.y.

NODESET_List __pad18__

Definition at line 763 of file parse_spice.y.

DEVICE_List_1 __pad19__

Definition at line 773 of file parse_spice.y.

InputLine __pad1__

Definition at line 203 of file parse_spice.y.

DEVICE_List_2 __pad20__

Definition at line 791 of file parse_spice.y.

DEVICE_List_3 __pad21__

Definition at line 813 of file parse_spice.y.

MODEL_Ident __pad22__

Definition at line 835 of file parse_spice.y.

DC_List __pad23__

Definition at line 842 of file parse_spice.y.

Definition at line 846 of file parse_spice.y.

Node __pad25__

Definition at line 852 of file parse_spice.y.

FH_Node __pad26__

Definition at line 854 of file parse_spice.y.

PairList __pad27__

Definition at line 856 of file parse_spice.y.

ValueList __pad28__

Definition at line 861 of file parse_spice.y.

NodeValueList __pad29__

Definition at line 868 of file parse_spice.y.

DefinitionLine __pad2__

Definition at line 214 of file parse_spice.y.

NodeList __pad30__

Definition at line 879 of file parse_spice.y.

VSourceList __pad31__

Definition at line 886 of file parse_spice.y.

Expr __pad32__

Definition at line 893 of file parse_spice.y.

ExprList __pad33__

Definition at line 901 of file parse_spice.y.

Subcircuit __pad34__

Definition at line 907 of file parse_spice.y.

BeginSub __pad35__ = $1 NULL

Definition at line 913 of file parse_spice.y.

SubBody __pad36__

Definition at line 922 of file parse_spice.y.

SubCkt_Ident __pad37__

Definition at line 934 of file parse_spice.y.

EndSub __pad38__

Definition at line 940 of file parse_spice.y.

SubBodyLine __pad39__

Definition at line 941 of file parse_spice.y.

TC_Value_1 __pad3__

Definition at line 600 of file parse_spice.y.

TC_Value_2 __pad4__ = spice_create_par_value ($1, $2)

Definition at line 605 of file parse_spice.y.

Definition at line 613 of file parse_spice.y.

Definition at line 621 of file parse_spice.y.

Definition at line 630 of file parse_spice.y.

Definition at line 639 of file parse_spice.y.

Definition at line 650 of file parse_spice.y.

double d

Definition at line 149 of file parse_spice.y.

Definition at line 150 of file parse_spice.y.

Definition at line 204 of file parse_spice.y.

Definition at line 893 of file parse_spice.y.

char* ident

Definition at line 147 of file parse_spice.y.

next = $2

Definition at line 899 of file parse_spice.y.

name { ... } spice_title

Definition at line 48 of file parse_spice.y.

char* str

Definition at line 148 of file parse_spice.y.

Definition at line 151 of file parse_spice.y.

struct value_t* value

Definition at line 152 of file parse_spice.y.

BeginSub values = netlist_append_values ($$->values, $5)

Definition at line 223 of file parse_spice.y.