Go to the source code of this file.
|
enum | {
TE_VARIABLE = 0
, TE_FUNCTION0 = 8
, TE_FUNCTION1
, TE_FUNCTION2
,
TE_FUNCTION3
, TE_FUNCTION4
, TE_FUNCTION5
, TE_FUNCTION6
,
TE_FUNCTION7
, TE_CLOSURE0 = 16
, TE_CLOSURE1
, TE_CLOSURE2
,
TE_CLOSURE3
, TE_CLOSURE4
, TE_CLOSURE5
, TE_CLOSURE6
,
TE_CLOSURE7
, TE_FLAG_PURE = 32
} |
|
◆ te_expr
◆ te_variable
◆ anonymous enum
Enumerator |
---|
TE_VARIABLE | |
TE_FUNCTION0 | |
TE_FUNCTION1 | |
TE_FUNCTION2 | |
TE_FUNCTION3 | |
TE_FUNCTION4 | |
TE_FUNCTION5 | |
TE_FUNCTION6 | |
TE_FUNCTION7 | |
TE_CLOSURE0 | |
TE_CLOSURE1 | |
TE_CLOSURE2 | |
TE_CLOSURE3 | |
TE_CLOSURE4 | |
TE_CLOSURE5 | |
TE_CLOSURE6 | |
TE_CLOSURE7 | |
TE_FLAG_PURE | |
Definition at line 43 of file tinyexpr.h.
◆ te_compile()
Definition at line 665 of file tinyexpr.c.
665 {
670
673
676 if (error) {
678 if (*error == 0)
679 *error = 1;
680 }
681 return 0;
682 } else {
684 if (error)
685 *error = 0;
687 }
688}
TH1X EXPRT * h1_book(const char *name, const char *title, int bins, double min, double max)
const te_variable * lookup
void next_token(state *s)
static te_expr * list(state *s)
◆ te_eval()
Definition at line 583 of file tinyexpr.c.
583 {
586
590
600 case 0:
return TE_FUN(
void)();
601 case 1:
return TE_FUN(
double)(
M(0));
602 case 2:
return TE_FUN(
double,
double)(
M(0),
M(1));
603 case 3:
return TE_FUN(
double,
double,
double)(
M(0),
M(1),
M(2));
604 case 4:
return TE_FUN(
double,
double,
double,
double)(
M(0),
M(1),
M(2),
M(3));
605 case 5:
return TE_FUN(
double,
double,
double,
double,
double)(
M(0),
M(1),
M(2),
M(3),
M(4));
606 case 6:
return TE_FUN(
double,
double,
double,
double,
double,
double)(
M(0),
M(1),
M(2),
M(3),
M(4),
M(5));
607 case 7:
return TE_FUN(
double,
double,
double,
double,
double,
double,
double)(
M(0),
M(1),
M(2),
M(3),
M(4),
M(5),
M(6));
609 }
610
620 case 0:
return TE_FUN(
void *)(
n->parameters[0]);
621 case 1:
return TE_FUN(
void *,
double)(
n->parameters[1],
M(0));
622 case 2:
return TE_FUN(
void *,
double,
double)(
n->parameters[2],
M(0),
M(1));
623 case 3:
return TE_FUN(
void *,
double,
double,
double)(
n->parameters[3],
M(0),
M(1),
M(2));
624 case 4:
return TE_FUN(
void *,
double,
double,
double,
double)(
n->parameters[4],
M(0),
M(1),
M(2),
M(3));
625 case 5:
return TE_FUN(
void *,
double,
double,
double,
double,
double)(
n->parameters[5],
M(0),
M(1),
M(2),
M(3),
M(4));
626 case 6:
return TE_FUN(
void *,
double,
double,
double,
double,
double,
double)(
n->parameters[6],
M(0),
M(1),
M(2),
M(3),
M(4),
M(5));
627 case 7:
return TE_FUN(
void *,
double,
double,
double,
double,
double,
double,
double)(
n->parameters[7],
M(0),
M(1),
M(2),
M(3),
M(4),
M(5),
M(6));
629 }
630
632 }
633}
◆ te_free()
Definition at line 128 of file tinyexpr.c.
128 {
130 return;
133}
void te_free_parameters(te_expr *n)
◆ te_interp()
Definition at line 690 of file tinyexpr.c.
690 {
692 double ret;
696 } else {
698 }
699 return ret;
700}
double te_eval(const te_expr *n)
te_expr * te_compile(const char *expression, const te_variable *variables, int var_count, int *error)
◆ te_print()
Definition at line 739 of file tinyexpr.c.
739 {
741}
static void pn(const te_expr *n, int depth)