A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
ParserHelperFunctions.cc File Reference
#include <iostream>
#include <stdlib.h>
#include "Parser.h"
#include "ParserHelperFunctions.h"
#include "AttList.h"
#include "KeyValueList.h"
#include "TupleSpec.h"
#include "AtomicComputationList.h"
#include "AtomicComputationClasses.h"
#include <string>
#include <map>
#include <vector>
#include <utility>
+ Include dependency graph for ParserHelperFunctions.cc:

Go to the source code of this file.

Macros

#define SQL_PARSER_C
 

Functions

struct KeyValueListmakeEmptyKeyValueList ()
 
struct KeyValueListmakeKeyValueList (char *keyName, char *valueName)
 
struct KeyValueListpushBackKeyValue (struct KeyValueList *addToMe, char *keyName, char *valueName)
 
struct AtomicComputationmakeFilterWithList (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeApplyWithList (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, char *opName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeAggWithList (struct TupleSpec *output, struct TupleSpec *input, char *nodeName, struct KeyValueList *useMe)
 
struct AtomicComputationmakePartitionWithList (struct TupleSpec *output, struct TupleSpec *input, char *nodeName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeJoinWithList (struct TupleSpec *output, struct TupleSpec *lInput, struct TupleSpec *lProjection, struct TupleSpec *rInput, struct TupleSpec *rProjection, char *opName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeHashLeftWithList (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, char *opName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeHashRightWithList (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, char *opName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeHashOneWithList (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeFlattenWithList (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeScanWithList (struct TupleSpec *output, char *dbName, char *setName, char *nodeName, struct KeyValueList *useMe)
 
struct AtomicComputationmakeOutputWithList (struct TupleSpec *output, struct TupleSpec *input, char *dbName, char *setName, char *nodeName, struct KeyValueList *useMe)
 
struct AttListmakeAttList (char *fromMe)
 
struct AttListpushBackAttribute (struct AttList *addToMe, char *fromMe)
 
struct TupleSpecmakeTupleSpec (char *setName, struct AttList *useMe)
 
struct AtomicComputationListmakeAtomicComputationList (struct AtomicComputation *fromMe)
 
struct AtomicComputationListpushBackAtomicComputation (struct AtomicComputationList *input, struct AtomicComputation *addMe)
 
struct TupleSpecmakeEmptyTupleSpec (char *setName)
 
struct AtomicComputationmakeFilter (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName)
 
struct AtomicComputationmakeApply (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, char *opName)
 
struct AtomicComputationmakeAgg (struct TupleSpec *output, struct TupleSpec *input, char *nodeName)
 
struct AtomicComputationmakePartition (struct TupleSpec *output, struct TupleSpec *input, char *nodeName)
 
struct AtomicComputationmakeJoin (struct TupleSpec *output, struct TupleSpec *lInput, struct TupleSpec *lProjection, struct TupleSpec *rInput, struct TupleSpec *rProjection, char *opName)
 
struct AtomicComputationmakeHashLeft (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, char *opName)
 
struct AtomicComputationmakeHashRight (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName, char *opName)
 
struct AtomicComputationmakeHashOne (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName)
 
struct AtomicComputationmakeFlatten (struct TupleSpec *output, struct TupleSpec *input, struct TupleSpec *projection, char *nodeName)
 
struct AtomicComputationmakeScan (struct TupleSpec *output, char *dbName, char *setName, char *nodeName)
 
struct AtomicComputationmakeOutput (struct TupleSpec *output, struct TupleSpec *input, char *dbName, char *setName, char *nodeName)
 

Macro Definition Documentation

#define SQL_PARSER_C

Definition at line 20 of file ParserHelperFunctions.cc.

Function Documentation

struct AtomicComputation* makeAgg ( struct TupleSpec output,
struct TupleSpec input,
char *  nodeName 
)

Definition at line 267 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeAggWithList ( struct TupleSpec output,
struct TupleSpec input,
char *  nodeName,
struct KeyValueList useMe 
)

Definition at line 87 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeApply ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
char *  opName 
)

Definition at line 252 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeApplyWithList ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
char *  opName,
struct KeyValueList useMe 
)

Definition at line 75 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputationList* makeAtomicComputationList ( struct AtomicComputation fromMe)

Definition at line 220 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AttList* makeAttList ( char *  fromMe)

Definition at line 200 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct KeyValueList* makeEmptyKeyValueList ( )

HERE WE DEFINE ALL OF THE C FUNCTIONS TO MANIPULATE THE ABOVE DATA TYPES

Definition at line 44 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct TupleSpec* makeEmptyTupleSpec ( char *  setName)

Definition at line 232 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeFilter ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName 
)

Definition at line 238 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeFilterWithList ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
struct KeyValueList useMe 
)

Definition at line 64 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeFlatten ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName 
)

Definition at line 357 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeFlattenWithList ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
struct KeyValueList useMe 
)

Definition at line 160 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeHashLeft ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
char *  opName 
)

Definition at line 311 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeHashLeftWithList ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
char *  opName,
struct KeyValueList useMe 
)

Definition at line 123 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeHashOne ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName 
)

Definition at line 343 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeHashOneWithList ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
struct KeyValueList useMe 
)

Definition at line 149 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeHashRight ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
char *  opName 
)

Definition at line 327 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeHashRightWithList ( struct TupleSpec output,
struct TupleSpec input,
struct TupleSpec projection,
char *  nodeName,
char *  opName,
struct KeyValueList useMe 
)

Definition at line 135 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeJoin ( struct TupleSpec output,
struct TupleSpec lInput,
struct TupleSpec lProjection,
struct TupleSpec rInput,
struct TupleSpec rProjection,
char *  opName 
)

Definition at line 293 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeJoinWithList ( struct TupleSpec output,
struct TupleSpec lInput,
struct TupleSpec lProjection,
struct TupleSpec rInput,
struct TupleSpec rProjection,
char *  opName,
struct KeyValueList useMe 
)

Definition at line 108 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct KeyValueList* makeKeyValueList ( char *  keyName,
char *  valueName 
)

Definition at line 49 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeOutput ( struct TupleSpec output,
struct TupleSpec input,
char *  dbName,
char *  setName,
char *  nodeName 
)

Definition at line 386 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeOutputWithList ( struct TupleSpec output,
struct TupleSpec input,
char *  dbName,
char *  setName,
char *  nodeName,
struct KeyValueList useMe 
)

Definition at line 184 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makePartition ( struct TupleSpec output,
struct TupleSpec input,
char *  nodeName 
)

Definition at line 279 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makePartitionWithList ( struct TupleSpec output,
struct TupleSpec input,
char *  nodeName,
struct KeyValueList useMe 
)

Definition at line 97 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeScan ( struct TupleSpec output,
char *  dbName,
char *  setName,
char *  nodeName 
)

Definition at line 372 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputation* makeScanWithList ( struct TupleSpec output,
char *  dbName,
char *  setName,
char *  nodeName,
struct KeyValueList useMe 
)

Definition at line 173 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct TupleSpec* makeTupleSpec ( char *  setName,
struct AttList useMe 
)

Definition at line 213 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AtomicComputationList* pushBackAtomicComputation ( struct AtomicComputationList input,
struct AtomicComputation addMe 
)

Definition at line 226 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct AttList* pushBackAttribute ( struct AttList addToMe,
char *  fromMe 
)

Definition at line 207 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function:

struct KeyValueList* pushBackKeyValue ( struct KeyValueList addToMe,
char *  keyName,
char *  valueName 
)

Definition at line 57 of file ParserHelperFunctions.cc.

+ Here is the call graph for this function: