11#ifndef CHAISCRIPT_ALGEBRAIC_HPP_
12#define CHAISCRIPT_ALGEBRAIC_HPP_
40 static const char *opers[] = {
42 "==",
"<",
">",
"<=",
">=",
"!=",
44 "=",
"++",
"--",
"*=",
"+=",
47 "&=",
"|=",
"<<=",
">>=",
50 "<<",
">>",
"%",
"&",
"|",
"^",
"~",
52 "+",
"/",
"*",
"-",
"+",
"-",
55 return opers[
static_cast<int>(t_oper)];
62#pragma warning(disable : 4307)
65 const auto op_hash = utility::fnv1a_32(t_str.c_str());
Namespace chaiscript contains every API call that the average user will be concerned with.
Definition chaiscript_algebraic.hpp:21
Opers
Definition chaiscript_algebraic.hpp:23
@ shift_right
Definition chaiscript_algebraic.hpp:33
@ pre_increment
Definition chaiscript_algebraic.hpp:27
@ non_const_int_flag
Definition chaiscript_algebraic.hpp:29
@ sum
Definition chaiscript_algebraic.hpp:35
@ pre_decrement
Definition chaiscript_algebraic.hpp:27
@ less_than_equal
Definition chaiscript_algebraic.hpp:25
@ boolean_flag
Definition chaiscript_algebraic.hpp:24
@ bitwise_and
Definition chaiscript_algebraic.hpp:33
@ bitwise_xor
Definition chaiscript_algebraic.hpp:33
@ assign_bitwise_or
Definition chaiscript_algebraic.hpp:30
@ unary_minus
Definition chaiscript_algebraic.hpp:35
@ assign
Definition chaiscript_algebraic.hpp:27
@ const_flag
Definition chaiscript_algebraic.hpp:34
@ equals
Definition chaiscript_algebraic.hpp:25
@ assign_shift_left
Definition chaiscript_algebraic.hpp:30
@ bitwise_complement
Definition chaiscript_algebraic.hpp:33
@ assign_sum
Definition chaiscript_algebraic.hpp:27
@ assign_product
Definition chaiscript_algebraic.hpp:27
@ less_than
Definition chaiscript_algebraic.hpp:25
@ assign_remainder
Definition chaiscript_algebraic.hpp:31
@ quotient
Definition chaiscript_algebraic.hpp:35
@ assign_bitwise_xor
Definition chaiscript_algebraic.hpp:31
@ remainder
Definition chaiscript_algebraic.hpp:33
@ assign_bitwise_and
Definition chaiscript_algebraic.hpp:30
@ assign_difference
Definition chaiscript_algebraic.hpp:28
@ difference
Definition chaiscript_algebraic.hpp:35
@ not_equal
Definition chaiscript_algebraic.hpp:25
@ const_int_flag
Definition chaiscript_algebraic.hpp:32
@ assign_quotient
Definition chaiscript_algebraic.hpp:28
@ greater_than_equal
Definition chaiscript_algebraic.hpp:25
@ shift_left
Definition chaiscript_algebraic.hpp:33
@ unary_plus
Definition chaiscript_algebraic.hpp:35
@ non_const_flag
Definition chaiscript_algebraic.hpp:26
@ bitwise_or
Definition chaiscript_algebraic.hpp:33
@ product
Definition chaiscript_algebraic.hpp:35
@ assign_shift_right
Definition chaiscript_algebraic.hpp:30
@ greater_than
Definition chaiscript_algebraic.hpp:25
@ invalid
Definition chaiscript_algebraic.hpp:36
static const char * to_string(Opers t_oper)
Definition chaiscript_algebraic.hpp:39
static Opers to_operator(const std::string &t_str, bool t_is_unary=false)
Definition chaiscript_algebraic.hpp:58