Go to the previous, next section.

Constructing Expressions Using Explicit Function Calls

Expressions and statements can be created using these functions. The types of expressions are in See section Operators. Expressions and statements can be created using operator overloading (See section Constructing Expressions Using Operator Overloading). Building expressions using explicit functions is recommended when the exact structure of the expression is not known at compile time.

     block & op(char * o, 
                block & A) 
     block & op(unary_op o, 
                block & A) 
                                    
     block & op(block & A, 
                binary_op o, 
                block & B)   
                                    
     block & op(block & A, 
                char * o, 
                block & B)   
                                    
     block & assign(block & A, 
                    assign_op o, 
                    block & B) 
                                      
     block & CALL(block & s, 
                  block & ex1 = *NOOP, block & ex2 = *NOOP, 
                  block & ex3 = *NOOP, block & ex4 = *NOOP, 
                  block & ex5 = *NOOP, block & ex6 = *NOOP, 
                  block & ex7 = *NOOP, block & ex8 = *NOOP, 
                  block & ex9 = *NOOP, block & ex10= *NOOP, 
                  block & ex11= *NOOP, block & ex12= *NOOP);

     block & douniop(unary_op uop)   





     block & dobinop(binary_op bop, 
                     block & A)       
     block & dobinop(binary_op bop, 
                     int i)           
     block & dobinop(binary_op bop, 
                     double d)        
     block & dobinop(binary_op bop, 
                     float d)         
     block & dobinop(binary_op bop, 
                     char * s)        






     block & doasignop(assign_op aop, 
                       block & A)     

     block & doasignop(assign_op aop, 
                       int i)         
     block & doasignop(assign_op aop, 
                       double d)      
     block & doasignop(assign_op aop, 
                       float d)       
     block & doasignop(assign_op aop, 
                       char * s)      

Go to the previous, next section.