📄 bat5.mal
字号:
#line 48 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"#command bat(ht:int, tt:int) :bat[:any_1,:any_2] #address BKCnewBat#comment "Creates a new empty transient BAT with head- and tail-types # as indicated.";##command bat(ht:int, tt:int, size:int) :bat[:any_1,:any_2] #address BKCnewBATint#comment "Creates a new empty BAT, allocating 'size' elements.";##command bat(ht:int, tt:int, size:lng) :bat[:any_1,:any_2] #address BKCnewBATlng#comment "Creates a new empty BAT, allocating 'size' elements.";module bat;command reverse(b:bat[:any_1,:any_2]) :bat[:any_2,:any_1] address BKCreversecomment "Returns the reverse view of a BAT (head is tail and tail is head). BEWARE no copying is involved; input and output refer to the same object!";command mirror(b:bat[:any_1,:any_2]) :bat[:any_1,:any_1] address BKCmirrorcomment "Returns the head-mirror image of a BAT (two head columns).";#command convert(b:bat[:any_1,:any_2] ) :bat[:any_1,:any_2] #address BKCconvert#comment "Convert the contents of a BAT from little-endian to big-endian # and vice versa. THIS command SHOULD NOT BE USED FROM MAL!# DANGEROUS! DEBUGGING PURPOSES ONLY!";command order(b:bat[:any_1,:any_2]) :bat[:any_1,:any_2] address BKCordercomment "Sorts the BAT itself on the head, in place. ";command orderReverse(b:bat[:any_1,:any_2]) :bat[:any_1,:any_2] address BKCorder_revcomment "Reverse sorts the BAT itself on the head, in place. ";command revert(b:bat[:any_1,:any_2]) :bat[:any_1,:any_2] address BKCrevertcomment "Puts all BUNs in a BAT in reverse order. (Belongs to the BAT sequence module)";#line 149 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command info ( b:bat[:any_1,:any_2]) :bat[:str,:str] address BKCinfocomment "Produce a BAT containing info about a BAT in [attribute,value] format. It contains all properties of the BAT record. See the BAT documentation in GDK for more information.";command getCapacity(b:bat[:any_1,:any_2]):lng address BKCgetCapacitycomment "Returns the current allocation size (in max number of elements) of a BAT.";command getHeadType(b:bat[:any_1,:any_2] ) :str address BKCgetHeadTypecomment "Returns the type of the head column of a BAT, as an integer type number.";command getTailType( b:bat[:any_1,:any_2] ) :str address BKCgetTailType comment "Returns the type of the tail column of a BAT, as an integer type number.";command getRole ( bid:bat[:any_1,:any_2] ) :str address BKCgetRolecomment "Returns the rolename of the head column of a BAT.";command setKey( b:bat[:any_1,:any_2], mode:bit) :bat[:any_1,:any_2] address BKCsetkeycomment "Sets the 'key' property of the head column to 'mode'. In 'key' mode, the kernel will silently block insertions that cause a duplicate entries in the head column. KNOWN BUG:when 'key' is set to TRUE, this function does not automatically eliminate duplicates. Use b := b.kunique;";command isaKey( b:bat[:any_1,:any_2]) :bit address BKCgetKeycomment "return whether the head column of a BAT is unique (key).";command setSet( b:bat[:any_1,:any_2], mode:bit) :bat[:any_1,:any_2] address BKCsetSetcomment "Sets the 'set' property on this BAT to 'mode'. In 'set' mode, the kernel will silently block insertions that cause a duplicate BUN [head,tail] entries in the BAT. KNOWN BUG:when 'set' is set to TRUE, this function does not automatically eliminate duplicates. Use b := b.sunique; Returns the BAT itself.";command isaSet( b:bat[:any_1,:any_1]) :bit address BKCisaSetcomment "return whether the BAT mode is set to unique.";command setAccess( b:bat[:any_1,:any_2], mode:str) :bat[:any_1,:any_2]address BKCsetAccesscomment "Try to change the update access priviliges to this BAT. Mode: r[ead-only] - allow only read access. a[append-only] - allow reads and update. w[riteable] - allow all operations. BATs are updatable by default. On making a BAT read-only, all subsequent updates fail with an error message.Returns the BAT itself.";#command access( b:bat[:any_1,:any_2], mode:int) :bat[:any_1,:any_2]#address BKCaccess;command setAppendMode( b:bat[:any_1,:any_2]) :bat[:any_1,:any_2]address BKCsetAppendModecomment "Change access privilige of BAT to append only";command setReadMode( b:bat[:any_1,:any_2]) :bat[:any_1,:any_2]address BKCsetReadModecomment "Change access privilige of BAT to read only";command setWriteMode( b:bat[:any_1,:any_2]) :bat[:any_1,:any_2]address BKCsetWriteModecomment "Change access privilige of BAT to read and write";command getAccess( b:bat[:any_1,:any_2]):str address BKCgetAccesscomment "return the access mode attached to this BAT as a character.";command hasAppendMode( b:bat[:any_1,:any_2]):bit address BKChasAppendModecomment "return true if to this BAT is append only.";command hasWriteMode( b:bat[:any_1,:any_2]):bit address BKChasWriteModecomment "return true if to this BAT is read and write.";command hasReadMode( b:bat[:any_1,:any_2]):bit address BKChasReadModecomment "return true if to this BAT is read only.";command getSequenceBase( b:bat[:oid,:any_1]):oid address BKCgetSequenceBasecomment "Get the sequence base for the void column of a BAT.";#command setSequenceBase( b:bat[:oid,:any_1], base:oid):void#address BKCsetSequenceBase#comment "Set the sequence base for the void column of a BAT.";command setSorted(b:bat[:any_1,:any_2]) :bit address BKCsetSortedcomment "Assure BAT is ordered on the head.";command isSorted(b:bat[:any_1,:any_2]) :bit address BKCisSortedcomment "Returns whether a BAT is ordered on head or not.";command isSortedReverse(b:bat[:any_1,:any_2]) :bit address BKCisSortedReversecomment "Returns whether a BAT is ordered on head or not.";command getBatSize(b:bat[:any_1,:any_2]) :lng address BKCbatsizecomment "A version of BATsize that does not require loading the BAT.";#line 264 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command insert(b:bat[:any_1,:any_2], src:bat[:any_1,:any_2]):voidaddress BKCinsert_batcomment "Insert all BUNs of the second BAT into the first.";command insert(b:bat[:any_1,:any_2], src:bat[:any_1,:any_2], force:bit):voidaddress BKCinsert_bat_forcecomment "Insert all BUNs of the second BAT into the first.";command insert(b:bat[:any_1,:any_2], h:any_1, t:any_2) :voidaddress BKCinsert_buncomment "Insert one BUN[h,t] in a BAT.";command insert(b:bat[:any_1,:any_2], h:any_1, t:any_2, force:bit) :voidaddress BKCinsert_bun_forcecomment "Insert one BUN[h,t] in a BAT.";#line 282 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command replace(b:bat[:any_1, :any_2], src:bat[:any_1,:any_2]) :voidaddress BKCreplace_batcomment "Perform replace for all BUNs of the second BAT into the first.";command replace(b:bat[:any_1, :any_2], src:bat[:any_1,:any_2], force:bit) :voidaddress BKCreplace_bat_forcecomment "Perform replace for all BUNs of the second BAT into the first.";command replace(b:bat[:any_1, :any_2], h:any_1, t:any_2) :voidaddress BKCreplace_buncomment "Replace the tail value of one BUN that has some head value.";command replace(b:bat[:any_1, :any_2], h:any_1, t:any_2, force:bit) :voidaddress BKCreplace_bun_forcecomment "Replace the tail value of one BUN that has some head value.";#line 300 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command append( i:bat[:any_1,:any_2], u:bat[:any_1,:any_2] ) :voidaddress BKCappend_wrapcomment "append the content of u to i";command append( i:bat[:any_1,:any_2], u:bat[:any_1,:any_2], force:bit ) :voidaddress BKCappend_force_wrapcomment "append the content of u to i";command append(i:bat[:oid,:any_1], u:any_1):voidaddress BKCappend_val_wrapcomment "append the value u to i";command append(i:bat[:void,:any_1], u:any_1):voidaddress BKCappend_val_wrapcomment "append the value u to i";command append(i:bat[:any_1,:void], u:any_1):voidaddress BKCappend_reverse_val_wrapcomment "append the value u to i";command append(i:bat[:any_1,:any_2], u:any_2, force:bit):voidaddress BKCappend_val_force_wrapcomment "append the value u to i";command inplace( o:bat[:any_1,:any_2], id:any_1, t:any_2) :voidaddress BKCbun_inplacecomment "inplace replace values on the given locations";command inplace( o:bat[:any_1,:any_2], d:bat[:any_1,:any_2]) :voidaddress BKCbat_inplacecomment "inplace replace values on the given locations";command inplace( o:bat[:any_1,:any_2], id:any_1, t:any_2, force:bit) :voidaddress BKCbun_inplace_forcecomment "inplace replace values on the given locations";command inplace( o:bat[:any_1,:any_2], d:bat[:any_1,:any_2], force:bit) :voidaddress BKCbat_inplace_forcecomment "inplace replace values on the given locations";#line 341 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command delete(b:bat[:any_1, :any_2], h:any_1, t:any_2) :voidaddress BKCdelete_buncomment "Delete one specific BUN.";command delete(b:bat[:any_1, :any_2], h:any_1) :voidaddress BKCdeletecomment "Delete all BUNs with a certain tail value.";command delete(b:bat[:any_1, :any_2]) :voidaddress BKCdelete_allcomment "Delete all BUNs in a BAT.";#line 354 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command delete(b:bat[:any_1, :any_2], src:bat[:any_1,:any_2]) :voidaddress BKCdelete_bat_buncomment "Delete from the first BAT all BUNs with a corresponding BUN in the second.";command getAlpha(b:bat[:any_1,:any_2]) :bat[:any_1,:any_2] address BKCgetAlphacomment "Obtain the list of BUNs added";command getDelta(b:bat[:any_1,:any_2]) :bat[:any_1,:any_2] address BKCgetDeltacomment "Obtain the list of BUNs deleted";#line 382 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command setName ( b:bat[:any_1,:any_2] , s:str) :voidaddress BKCsetNamecomment "Give a logical name to a BAT. ";command getName ( b:bat[:any_1,:any_2]) :str address BKCgetBBPnamecomment "Gives back the logical name of a BAT.";command setRole( b:bat[:any_1,:any_2], h:str, t:str) :voidaddress BKCsetRolecomment "Give a logical name to the columns of a BAT.";command setColumn( b:bat[:any_1,:any_2], t:str) :voidaddress BKCsetColumncomment "Give a logical name to the tail column of a BAT.";command setColumn( b:bat[:any_1,:any_2], h:str, t:str) :voidaddress BKCsetColumnscomment "Give both columns of a BAT a new name.";command isTransient( b:bat[:any_1,:any_2]) :bit address BKCisTransient;command setTransient( b:bat[:any_1,:any_2]) :voidaddress BKCsetTransientcomment "Make the BAT transient. Returns boolean which indicates if theBAT administration has indeed changed.";command isPersistent( b:bat[:any_1,:any_2]) :bit address BKCisPersistent;command setPersistent( b:bat[:any_1,:any_2],f:bit) :voidaddress BKCpersistscomment "Backward compatibility";command setPersistent( b:bat[:any_1,:any_2]) :voidaddress BKCsetPersistentcomment "Make the BAT persistent. Returns boolean which indicates if the BAT administration has indeed changed.";command save(nme:bat[:any_1,:any_2]) :voidaddress BKCsave2;command save(nme:str) :bit address BKCsavecomment "Save a BAT to storage, if it was loaded and dirty. Returns whether IO was necessary. Please realize that calling this function violates the atomic commit protocol!!";command load(name:str) :bat[:any_1,:any_2] address BKCloadcomment "Load a particular BAT from disk";command unload(name:str) :bit address BKCunloadcomment "Swapout a BAT to disk. Transient BATs can also be swapped out. Returns whether the unload indeed happened. ";command isCached(b:bat[:any_1,:any_2]):bit address BKCisCachedcomment "Bat is stored in main memory.";command getHeat(b:bat[:any_1,:any_2]) :lng address BKCheatcomment "Return the current BBP heat (LRU stamp)";command setCold(b:bat[:any_1,:any_1]) :void address BKCcoldBATcomment "Makes a BAT very cold for the BBP. The chance of being choses for swapout is big, afterwards.";command setHot(b:bat[:any_1,:any_2]) :void address BKChotBATcomment "Makes a BAT very hot for the BBP. The chance of being chosen for swapout is small, afterwards.";#line 487 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command setMemoryMap(b:bat[:any_1,:any_2], buns_mode:int, hheap_mode:int, theap_mode:int) :bit address BKCmmapcomment "For each individual heap, you can change the allocation mode to either STORE_MEM or STORE_MMAP. Passing an int(nil) means: no change. Changing a dirty STORE_MEM heap into STORE_MMAP, will cause a BAT save (this has to happen before the heap can be mapped into virtual memory). These modes are persistent. ";command setMemoryMap(b:bat[:any_1,:any_2], mode:int):bit address BKCmmap2comment "Alias for mmap(b,mode,mode,mode, mode,mode)";command setMemoryAdvise(b:bat[:any_1,:any_2], buns_mode:int, hheap_mode:int, theap_mode:int) :bit address BKCmadvisecomment "Modern Operating Systems allow users to influence the buffer management policy of virtual memory. This is a crucial feature for database systems, and eliminates the need to reimplement the OS in a database buffer manager. The supported flags are BUF_NORMAL (the normal adaptive kernel algorithm), BUF_RANDOM (no page prefetching), BUF_SEQUENTIAL (prefetch and swapout), BUF_WILLNEED (load everything with prefetch), BUF_DONTNEED (swapout). These buffer management modes are not persistent. Returns the BAT operated upon.";command setMemoryAdvise(b:bat[:any_1,:any_2], mode:int):bit address BKCmadvise2comment "alias for madvise(b,mode,mode,mode, mode,mode)";command setHash(b:bat[:any_1,:any_2],prop:bit):bit address BKCsetHash;#line 539 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/bat5.mx"command isSynced (b1:bat[:any_1,:any_2], b2:bat[:any_3,:any_4]) :bit address BKCisSyncedcomment "Tests whether two BATs are synced or not. ";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -