This commit is contained in:
ecpvint
2024-08-15 18:40:30 +08:00
commit 4485f045ca
552 changed files with 147047 additions and 0 deletions

View File

@ -0,0 +1,34 @@
/*
* Copyright (c) 2014, Oculus VR, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
*/
#ifndef __VARIADIC_SQL_PARSER_H
#define __VARIADIC_SQL_PARSER_H
#include "DS_List.hpp"
#include <stdarg.h>
namespace VariadicSQLParser
{
struct IndexAndType
{
unsigned int strIndex;
unsigned int typeMappingIndex;
};
const char* GetTypeMappingAtIndex(int i);
void GetTypeMappingIndices( const char *format, DataStructures::List<IndexAndType> &indices );
// Given an SQL string with variadic arguments, allocate argumentBinary and argumentLengths, and hold the parameters in binary format
// Last 2 parameters are out parameters
void ExtractArguments( va_list argptr, const DataStructures::List<IndexAndType> &indices, char ***argumentBinary, int **argumentLengths );
void FreeArguments(const DataStructures::List<IndexAndType> &indices, char **argumentBinary, int *argumentLengths);
}
#endif