示例#1
0
            public void create_aggregate(CodeContext context, string name, int n_arg, object aggregate_class)
            {
                UserAggregateThunk thunk = new UserAggregateThunk(context, name, aggregate_class);

                int rc = Sqlite3.sqlite3_create_function(this.db,
                                                         name, n_arg,
                                                         Sqlite3.SQLITE_ANY,
                                                         thunk,
                                                         null,
                                                         thunk.stepCallback,
                                                         thunk.finalCallback);

                if (rc != Sqlite3.SQLITE_OK)
                {
                    throw MakeOperationalError("Error creating aggregate");
                }
                else
                {
                    this.function_pinboard[aggregate_class] = null;
                }
            }
示例#2
0
            public void create_aggregate(CodeContext context, string name, int n_arg, object aggregate_class)
            {
                UserAggregateThunk thunk = new UserAggregateThunk(context, name, aggregate_class);

                int rc = Sqlite3.sqlite3_create_function(this.db,
                    name, n_arg,
                    Sqlite3.SQLITE_ANY,
                    thunk,
                    null,
                    thunk.stepCallback,
                    thunk.finalCallback);

                if(rc != Sqlite3.SQLITE_OK)
                    throw MakeOperationalError("Error creating aggregate");
                else
                    this.function_pinboard[aggregate_class] = null;
            }