evaluator.h File Reference

This module contains only one definition of function. More...

#include "db.h"

Include dependency graph for evaluator.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

MY_FLOAT evaluate (const tmpstats *statistics, cache_type *cache, const char **co, int i, int m)
 Main evaluation logic.


Detailed Description

This module contains only one definition of function.

See implementation for details.


Function Documentation

MY_FLOAT evaluate ( const tmpstats stats,
cache_type cache,
const char **  co,
int  i,
int  m 
)

Main evaluation logic.

Expressions uses prefix function notation and they are evaluated recursively. Main methods function can be found in file functions.h. This functions mainly parse expression and call appropriate functions. So parsing and logic is somehow divided. But some basic functions not related to the methods are also implemented here (like +, -, *, /, &, |). This is because it's simpler to implement shortcut evaluation here.

  • stats Statistics used to decide.
  • co Pointer to the expression.
  • i Current position in word.
  • m Length of the word.
See also:
tmpstats

References bentr(), bsqrs(), clearblanks(), closing(), dbentr(), dfentr(), evaluate(), fentr(), fillargs, fillonearg, firstarg(), fsqrs(), lalt(), nextarg(), ralt(), skiparg(), sqrs(), trian(), VPRINTF, and VWPRINTF.

Referenced by evaluate(), and find_it_thread().


Generated on Sat Dec 20 11:32:18 2008 for Affisix by  doxygen 1.5.7.1