/* Code generated by cmd/cgo; DO NOT EDIT. */ /* package command-line-arguments */ #line 1 "cgo-builtin-export-prolog" #include /* for ptrdiff_t below */ #ifndef GO_CGO_EXPORT_PROLOGUE_H #define GO_CGO_EXPORT_PROLOGUE_H #ifndef GO_CGO_GOSTRING_TYPEDEF typedef struct { const char *p; ptrdiff_t n; } _GoString_; #endif #endif /* Start of preamble from import "C" comments. */ #line 3 "libjsight.go" // DO NOT REMOVE THIS CODE. IT IS REAL C CODE, NOT COMMENTS. // struct NewJApiStruct { // int collectionIndex; // char *errstr; // }; // struct DocStruct { // char *html; // char *errstr; // }; #include struct Header { char * Name; char * Value; }; struct ErrorPosition { char * Filepath; int * Index; int * Line; int * Col; }; struct ValidationError { char * ReportedBy; char * Type; int Code; char * Title; char * Detail; struct ErrorPosition * Position; char ** Trace; // Null-terminated array of strings. }; __attribute__((weak)) int getHeadersArrayLen(struct Header ** p) { if( p == NULL ) return 0; int i = 0; while(p[i] != NULL) { i++; } return i; } __attribute__((weak)) int getStringArrayLen(char** p) { if( p == NULL ) return 0; int i = 0; while(p[i] != NULL) { i++; } return i; } // This function is intended to be called in c adapter in order to free memory, allocated for ValidationError internal pointers. __attribute__((weak)) void freeValidationError(struct ValidationError * error) { free(error->ReportedBy); free(error->Type); free(error->Title); free(error->Detail); if( error->Position != NULL ) { free(error->Position->Filepath); free(error->Position->Index); free(error->Position->Line); free(error->Position->Col); free(error->Position); } if( error->Trace != NULL ) { int i = 0; while(error->Trace[i] != NULL) { free(error->Trace[i]); i++; } free(error->Trace); } free(error); } #line 1 "cgo-generated-wrapper" /* End of preamble from import "C" comments. */ /* Start of boilerplate cgo prologue. */ #line 1 "cgo-gcc-export-header-prolog" #ifndef GO_CGO_PROLOGUE_H #define GO_CGO_PROLOGUE_H typedef signed char GoInt8; typedef unsigned char GoUint8; typedef short GoInt16; typedef unsigned short GoUint16; typedef int GoInt32; typedef unsigned int GoUint32; typedef long long GoInt64; typedef unsigned long long GoUint64; typedef GoInt64 GoInt; typedef GoUint64 GoUint; typedef __SIZE_TYPE__ GoUintptr; typedef float GoFloat32; typedef double GoFloat64; typedef float _Complex GoComplex64; typedef double _Complex GoComplex128; /* static assertion to make sure the file is being used on architecture at least with matching size of GoInt. */ typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 1:-1]; #ifndef GO_CGO_GOSTRING_TYPEDEF typedef _GoString_ GoString; #endif typedef void *GoMap; typedef void *GoChan; typedef struct { void *t; void *v; } GoInterface; typedef struct { void *data; GoInt len; GoInt cap; } GoSlice; #endif /* End of boilerplate cgo prologue. */ #ifdef __cplusplus extern "C" { #endif extern struct ValidationError* JSightValidateHttpRequest(char* apiSpecFilePath, char* requestMethod, char* requestURI, struct Header** requestHeaders, char* requestBody); extern struct ValidationError* JSightValidateHttpResponse(char* apiSpecFilePath, char* requestMethod, char* requestURI, int responseStatusCode, struct Header** responseHeaders, char* responseBody); extern char* JSightSerializeError(char* format, struct ValidationError* cErr); extern int JSightClearCache(); extern int JSightGOMAXPROCS(int n); extern char* JSightStat(); extern char* JSightBuildTime(); #ifdef __cplusplus } #endif