5
|
|
|
|
|
|
|
/*
* ***********************************************
*
* !!!! DO NOT EDIT !!!!
*
* This file was auto-generated by Build.PL.
*
* ***********************************************
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef H_LUCY_ANALYSIS_TOKEN
#define H_LUCY_ANALYSIS_TOKEN 1
#ifdef __cplusplus
extern "C" {
#endif
#include "lucy_parcel.h"
/* Include the header for this class's parent.
*/
#include "Clownfish/Obj.h"
/* Define the struct layout for instances of this class.
*/
#ifdef C_LUCY_TOKEN
extern uint32_t lucy_Token_IVARS_OFFSET;
typedef struct lucy_TokenIVARS lucy_TokenIVARS;
static CFISH_INLINE lucy_TokenIVARS*
lucy_Token_IVARS(lucy_Token *self) {
char *ptr = (char*)self + lucy_Token_IVARS_OFFSET;
return (lucy_TokenIVARS*)ptr;
}
#ifdef LUCY_USE_SHORT_NAMES
#define TokenIVARS lucy_TokenIVARS
#define Token_IVARS lucy_Token_IVARS
#endif
struct lucy_TokenIVARS {
char* text;
size_t len;
uint32_t start_offset;
uint32_t end_offset;
float boost;
int32_t pos_inc;
int32_t pos;
};
#endif /* C_LUCY_TOKEN */
/* Declare this class's inert variables.
*/
/* Declare both this class's inert functions and the C functions which
* implement this class's dynamic methods.
*/
LUCY_VISIBLE lucy_Token*
lucy_Token_new(const char* text, size_t len, uint32_t start_offset, uint32_t end_offset, float boost, int32_t pos_inc);
LUCY_VISIBLE lucy_Token*
lucy_Token_init(lucy_Token* self, const char* text, size_t len, uint32_t start_offset, uint32_t end_offset, float boost, int32_t pos_inc);
LUCY_VISIBLE int
lucy_Token_compare(const void* va, const void* vb);
uint32_t
LUCY_Token_Get_Start_Offset_IMP(lucy_Token* self);
uint32_t
LUCY_Token_Get_End_Offset_IMP(lucy_Token* self);
float
LUCY_Token_Get_Boost_IMP(lucy_Token* self);
int32_t
LUCY_Token_Get_Pos_Inc_IMP(lucy_Token* self);
int32_t
LUCY_Token_Get_Pos_IMP(lucy_Token* self);
char*
LUCY_Token_Get_Text_IMP(lucy_Token* self);
size_t
LUCY_Token_Get_Len_IMP(lucy_Token* self);
void
LUCY_Token_Set_Text_IMP(lucy_Token* self, char* text, size_t len);
void
LUCY_Token_Destroy_IMP(lucy_Token* self);
/* Define typedefs for each dynamic method, allowing us to cast generic
* pointers to the appropriate function pointer type more cleanly.
*/
typedef void*
(*LUCY_Token_To_Host_t)(lucy_Token* self, void* vcache);
typedef cfish_Obj*
(*LUCY_Token_Clone_t)(lucy_Token* self);
typedef bool
(*LUCY_Token_Equals_t)(lucy_Token* self, cfish_Obj* other);
typedef int32_t
(*LUCY_Token_Compare_To_t)(lucy_Token* self, cfish_Obj* other);
typedef void
(*LUCY_Token_Destroy_t)(lucy_Token* self);
typedef cfish_String*
(*LUCY_Token_To_String_t)(lucy_Token* self);
typedef uint32_t
(*LUCY_Token_Get_Start_Offset_t)(lucy_Token* self);
typedef uint32_t
(*LUCY_Token_Get_End_Offset_t)(lucy_Token* self);
typedef float
(*LUCY_Token_Get_Boost_t)(lucy_Token* self);
typedef int32_t
(*LUCY_Token_Get_Pos_Inc_t)(lucy_Token* self);
typedef int32_t
(*LUCY_Token_Get_Pos_t)(lucy_Token* self);
typedef char*
(*LUCY_Token_Get_Text_t)(lucy_Token* self);
typedef size_t
(*LUCY_Token_Get_Len_t)(lucy_Token* self);
typedef void
(*LUCY_Token_Set_Text_t)(lucy_Token* self, char* text, size_t len);
/* Define type-safe wrappers for inert functions of Obj.
*/
static CFISH_INLINE cfish_Class*
lucy_Token_get_class(lucy_Token *self) {
return cfish_Obj_get_class((cfish_Obj*)self);
}
static CFISH_INLINE cfish_String*
lucy_Token_get_class_name(lucy_Token *self) {
return cfish_Obj_get_class_name((cfish_Obj*)self);
}
static CFISH_INLINE bool
lucy_Token_is_a(lucy_Token *self, cfish_Class *ancestor) {
return cfish_Obj_is_a((cfish_Obj*)self, ancestor);
}
/* Define the inline functions which implement this class's virtual methods.
*/
extern LUCY_VISIBLE uint32_t LUCY_Token_To_Host_OFFSET;
static CFISH_INLINE void*
LUCY_Token_To_Host(lucy_Token* self, void* vcache) {
const LUCY_Token_To_Host_t method = (LUCY_Token_To_Host_t)cfish_obj_method(self, LUCY_Token_To_Host_OFFSET);
return method(self, vcache);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Clone_OFFSET;
static CFISH_INLINE cfish_Obj*
LUCY_Token_Clone(lucy_Token* self) {
const LUCY_Token_Clone_t method = (LUCY_Token_Clone_t)cfish_obj_method(self, LUCY_Token_Clone_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Equals_OFFSET;
static CFISH_INLINE bool
LUCY_Token_Equals(lucy_Token* self, cfish_Obj* other) {
const LUCY_Token_Equals_t method = (LUCY_Token_Equals_t)cfish_obj_method(self, LUCY_Token_Equals_OFFSET);
return method(self, other);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Compare_To_OFFSET;
static CFISH_INLINE int32_t
LUCY_Token_Compare_To(lucy_Token* self, cfish_Obj* other) {
const LUCY_Token_Compare_To_t method = (LUCY_Token_Compare_To_t)cfish_obj_method(self, LUCY_Token_Compare_To_OFFSET);
return method(self, other);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Destroy_OFFSET;
static CFISH_INLINE void
LUCY_Token_Destroy(lucy_Token* self) {
const LUCY_Token_Destroy_t method = (LUCY_Token_Destroy_t)cfish_obj_method(self, LUCY_Token_Destroy_OFFSET);
method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_To_String_OFFSET;
static CFISH_INLINE cfish_String*
LUCY_Token_To_String(lucy_Token* self) {
const LUCY_Token_To_String_t method = (LUCY_Token_To_String_t)cfish_obj_method(self, LUCY_Token_To_String_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Get_Start_Offset_OFFSET;
static CFISH_INLINE uint32_t
LUCY_Token_Get_Start_Offset(lucy_Token* self) {
const LUCY_Token_Get_Start_Offset_t method = (LUCY_Token_Get_Start_Offset_t)cfish_obj_method(self, LUCY_Token_Get_Start_Offset_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Get_End_Offset_OFFSET;
static CFISH_INLINE uint32_t
LUCY_Token_Get_End_Offset(lucy_Token* self) {
const LUCY_Token_Get_End_Offset_t method = (LUCY_Token_Get_End_Offset_t)cfish_obj_method(self, LUCY_Token_Get_End_Offset_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Get_Boost_OFFSET;
static CFISH_INLINE float
LUCY_Token_Get_Boost(lucy_Token* self) {
const LUCY_Token_Get_Boost_t method = (LUCY_Token_Get_Boost_t)cfish_obj_method(self, LUCY_Token_Get_Boost_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Get_Pos_Inc_OFFSET;
static CFISH_INLINE int32_t
LUCY_Token_Get_Pos_Inc(lucy_Token* self) {
const LUCY_Token_Get_Pos_Inc_t method = (LUCY_Token_Get_Pos_Inc_t)cfish_obj_method(self, LUCY_Token_Get_Pos_Inc_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Get_Pos_OFFSET;
static CFISH_INLINE int32_t
LUCY_Token_Get_Pos(lucy_Token* self) {
const LUCY_Token_Get_Pos_t method = (LUCY_Token_Get_Pos_t)cfish_obj_method(self, LUCY_Token_Get_Pos_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Get_Text_OFFSET;
static CFISH_INLINE char*
LUCY_Token_Get_Text(lucy_Token* self) {
const LUCY_Token_Get_Text_t method = (LUCY_Token_Get_Text_t)cfish_obj_method(self, LUCY_Token_Get_Text_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Get_Len_OFFSET;
static CFISH_INLINE size_t
LUCY_Token_Get_Len(lucy_Token* self) {
const LUCY_Token_Get_Len_t method = (LUCY_Token_Get_Len_t)cfish_obj_method(self, LUCY_Token_Get_Len_OFFSET);
return method(self);
}
extern LUCY_VISIBLE uint32_t LUCY_Token_Set_Text_OFFSET;
static CFISH_INLINE void
LUCY_Token_Set_Text(lucy_Token* self, char* text, size_t len) {
const LUCY_Token_Set_Text_t method = (LUCY_Token_Set_Text_t)cfish_obj_method(self, LUCY_Token_Set_Text_OFFSET);
method(self, text, len);
}
/* Declare callbacks for wrapping host overrides.
*/
#ifdef CFISH_NO_DYNAMIC_OVERRIDES
#define Lucy_Token_Get_Start_Offset_OVERRIDE NULL
#define Lucy_Token_Get_End_Offset_OVERRIDE NULL
#define Lucy_Token_Get_Boost_OVERRIDE NULL
#define Lucy_Token_Get_Pos_Inc_OVERRIDE NULL
#define Lucy_Token_Get_Pos_OVERRIDE NULL
#define Lucy_Token_Get_Text_OVERRIDE NULL
#define Lucy_Token_Get_Len_OVERRIDE NULL
#define Lucy_Token_Set_Text_OVERRIDE NULL
#else
uint32_t
Lucy_Token_Get_Start_Offset_OVERRIDE(lucy_Token* self);
uint32_t
Lucy_Token_Get_End_Offset_OVERRIDE(lucy_Token* self);
float
Lucy_Token_Get_Boost_OVERRIDE(lucy_Token* self);
int32_t
Lucy_Token_Get_Pos_Inc_OVERRIDE(lucy_Token* self);
int32_t
Lucy_Token_Get_Pos_OVERRIDE(lucy_Token* self);
char*
Lucy_Token_Get_Text_OVERRIDE(lucy_Token* self);
size_t
Lucy_Token_Get_Len_OVERRIDE(lucy_Token* self);
void
Lucy_Token_Set_Text_OVERRIDE(lucy_Token* self, char* text, size_t len);
#endif
/* Define "short names" for this class's symbols.
*/
#ifdef LUCY_USE_SHORT_NAMES
#define Token lucy_Token
#define TOKEN LUCY_TOKEN
#define Token_new lucy_Token_new
#define Token_init lucy_Token_init
#define Token_compare lucy_Token_compare
#define Token_get_class lucy_Token_get_class
#define Token_get_class_name lucy_Token_get_class_name
#define Token_is_a lucy_Token_is_a
#define Token_Get_Start_Offset_IMP LUCY_Token_Get_Start_Offset_IMP
#define Token_Get_End_Offset_IMP LUCY_Token_Get_End_Offset_IMP
#define Token_Get_Boost_IMP LUCY_Token_Get_Boost_IMP
#define Token_Get_Pos_Inc_IMP LUCY_Token_Get_Pos_Inc_IMP
#define Token_Get_Pos_IMP LUCY_Token_Get_Pos_IMP
#define Token_Get_Text_IMP LUCY_Token_Get_Text_IMP
#define Token_Get_Len_IMP LUCY_Token_Get_Len_IMP
#define Token_Set_Text_IMP LUCY_Token_Set_Text_IMP
#define Token_Destroy_IMP LUCY_Token_Destroy_IMP
#define Token_To_Host LUCY_Token_To_Host
#define Token_To_Host_t LUCY_Token_To_Host_t
#define Token_Clone LUCY_Token_Clone
#define Token_Clone_t LUCY_Token_Clone_t
#define Token_Equals LUCY_Token_Equals
#define Token_Equals_t LUCY_Token_Equals_t
#define Token_Compare_To LUCY_Token_Compare_To
#define Token_Compare_To_t LUCY_Token_Compare_To_t
#define Token_Destroy LUCY_Token_Destroy
#define Token_Destroy_t LUCY_Token_Destroy_t
#define Token_To_String LUCY_Token_To_String
#define Token_To_String_t LUCY_Token_To_String_t
#define Token_Get_Start_Offset LUCY_Token_Get_Start_Offset
#define Token_Get_Start_Offset_t LUCY_Token_Get_Start_Offset_t
#define Token_Get_End_Offset LUCY_Token_Get_End_Offset
#define Token_Get_End_Offset_t LUCY_Token_Get_End_Offset_t
#define Token_Get_Boost LUCY_Token_Get_Boost
#define Token_Get_Boost_t LUCY_Token_Get_Boost_t
#define Token_Get_Pos_Inc LUCY_Token_Get_Pos_Inc
#define Token_Get_Pos_Inc_t LUCY_Token_Get_Pos_Inc_t
#define Token_Get_Pos LUCY_Token_Get_Pos
#define Token_Get_Pos_t LUCY_Token_Get_Pos_t
#define Token_Get_Text LUCY_Token_Get_Text
#define Token_Get_Text_t LUCY_Token_Get_Text_t
#define Token_Get_Len LUCY_Token_Get_Len
#define Token_Get_Len_t LUCY_Token_Get_Len_t
#define Token_Set_Text LUCY_Token_Set_Text
#define Token_Set_Text_t LUCY_Token_Set_Text_t
#endif /* LUCY_USE_SHORT_NAMES */
#ifdef __cplusplus
}
#endif
#endif /* H_LUCY_ANALYSIS_TOKEN */
|