Example Structure binaryInsert 001

 

 

Description

This example initializes a Structure. Then it uses the binaryInsert function to add a new key while maintaining the ascending sort order of keys in the Structure.

 

Details

Initialize aStruct.

(setq aStruct #{A: 1 F: 2}) Returns: #<Structure 199917>

Inserts the key B: in aStruct. The location of the inserted key in the Structure is returned.

(binaryInsert aStruct B: ) Returns: 1

Returns the length of aStruct with the added key(B:).

(length aStruct) Returns: 3

Displays the contents of aStruct.

(display #<Structure 199917> ) Returns: #{A: 1 B: #void F: 2}true

Notes and Hints

The binaryInsert function preserves sort order. Normally a structure does not maintain sort order by default but can be explicitly sorted by the sort function.

 

Related Examples

Here are examples of the binaryInsert function at work.

CpxVector binaryInsert 008 FltVector binaryInsert 004 IntVector binaryInsert 005 Matrix binaryInsert 004
Matrix binaryInsert 005 NumMatrix binaryInsert 007 NumVector binaryInsert 006 ShortVector binaryInsert 006
Structure binaryInsert 001 Vector binaryInsert 002 Vector binaryInsert 003

 

Function Links

Here is the link to the current function used in this example.

binaryInsert

Here are a number of links to other related functions.

insert(Structure) binarySearch(Structure) uniqueInsert(Structure) sort(Structure)

 

Argument Types

Here are the links to the data types of the arguments used in this example.

Structure Symbol Integer

Here are a number of links to examples having similar argument types.

BitVector addMethod 023 BitVector cdr 010 BitVector compare 018 BitVector defmethod 020
BitVector findBlock 001 BitVector freeBlock 001 BitVector inside 007 BitVector isBitVector 001
BitVector isMember 008 BitVector isObject 012 BitVector length 013 BitVector member 008
BitVector methodsOf 021 BitVector ref 027 BitVector resize 010 BitVector sizeof 019
BitVector vectorFill 007 Boolean addMethod 011 Boolean addMethod 012 Boolean bcompareEQ 001
Boolean bcompareGE 001 Boolean bcompareGT 001 Boolean bcompareLE 001 Boolean bcompareLT 001
Boolean bcompareNE 001 Boolean boolean 001 Boolean compare 009 Boolean defmethod 012
Boolean isBoolean 001 Boolean methodsOf 012 Boolean send 010 Boolean sizeof 009
Brick addMethod 008 Brick defmethod 025 Brick methodsOf 024 Brick send 027
ByteVector isByteVector 001 ByteVector isCharAlphabetic 003 ByteVector isCharAlphanumeric 003 ByteVector isCharLowercase 003
ByteVector isCharName 003 ByteVector isCharNumeric 003 ByteVector isCharUppercase 003 ByteVector isCharWhitespace 003
ByteVector isObject 013 ByteVector sizeof 020 Character addMethod 013 Character cadd 001
Character ccompareEQ 001 Character ccompareGE 001 Character ccompareGT 001 Character ccompareLE 001
Character ccompareLT 001 Character ccompareNE 001 Character cdiv 001 Character character 001
Character cmod 001 Character cmul 001 Character compare 010 Character csub 001
Character defmethod 013 Character isCharacter 001 Character methodsOf 013 Character send 011
Character sizeof 010 Complex compare 021 Complex cos 002 Complex exp 002
Complex expt 002 Complex log 002 Complex log10 002 Complex log2 002
Complex logbase 002 Complex sin 002 Complex sqrt 002 Complex tan 002
Context debug 001 Context getGlobalValue 001 Context getSymbolTable 001 Context globalBinding 001
CpxVector addMethod 028 CpxVector avg 002 CpxVector binaryInsert 008 CpxVector binarySearch 008
CpxVector compare 020 CpxVector compareEQ 020 CpxVector compareGE 020 CpxVector compareGT 020
CpxVector compareLE 020 CpxVector compareLT 020 CpxVector compareNE 020 CpxVector send 028
Date addMethod 015 Date addMethod 016 Date compare 012 Date date 001
Date day 001 Date days360 001 Date defmethod 015 Date hour 001
Date methodsOf 015 Date minute 001 Date month 001 Date second 001
Date send 013 Date sizeof 012 Date time 001 Date time 002
Date year 001 Dictionary addMethod 005 Dictionary binarySearch 002 Dictionary compare 004
Dictionary count 002 Dictionary defMethod 006 Dictionary delete 003 Dictionary delete 004
Dictionary insert 002 Dictionary inside 002 Dictionary isBound 002 Dictionary isDictionary 001
Dictionary isObject 004 Dictionary length 005 Dictionary member 002 Dictionary methodsOf 007
Dictionary new 004 Dictionary ref 007 Dictionary ref 008 Dictionary ref 009
Dictionary refAttributes 002 Dictionary refValues 002 Dictionary remove 002 Dictionary resize 002
Dictionary send 004 Dictionary setAttributes 002 Dictionary setq 007 Dictionary setq 008
Dictionary setq 009 Dictionary sizeof 004 Dictionary sort 003 Dictionary sort 005
Directory addMethod 006 Directory compare 005 Directory count 003 Directory defMethod 007
Directory delete 005 Directory delete 006 Directory insert 003 Directory inside 003
Directory isBound 003 Directory isInside 003 Directory isMember 003 Directory isObject 005
Directory length 006 Directory member 002 Directory methodsOf 008 Directory new 005
Directory new 006 Directory ref 010 Directory ref 011 Directory ref 012
Directory refAttributes 003 Directory refValues 003 Directory remove 003 Directory resize 003
Directory send 005 Directory setAttributes 003 Directory setq 010 Directory setq 011
Directory sizeof 005 Directory sort 008 Directory sort 009 FltVector addMethod 019
FltVector binaryInsert 004 FltVector cdr 006 FltVector compare 014 FltVector defmethod 017
FltVector delete 009 FltVector insert 005 FltVector isFloatVector 001 FltVector isObject 007
FltVector length 008 FltVector methodsOf 017 FltVector ref 022 FltVector resize 006
FltVector sizeof 014 FltVector uniqueInsert 004 FltVector vectorFill 003 Function addMethod 017
Function addMethod 018 Function compare 013 Function defmethod 016 Function methodsOf 016
Function send 014 Function sizeof 013 IntVector addMethod 020 IntVector binaryInsert 005
IntVector cdr 007 IntVector compare 015 IntVector defmethod 018 IntVector delete 010
IntVector insert 006 IntVector inside 005 IntVector isIntegerVector 001 IntVector isMember 005
IntVector isObject 008 IntVector length 009 IntVector member 005 IntVector methodsOf 018
IntVector ref 023 IntVector resize 007 IntVector sizeof 015 IntVector uniqueInsert 005
IntVector vectorFill 004 Integer binaryNot 001 Integer bitwiseNot 001 Integer fact 001
Integer gcd 001 Integer iadd 001 Integer icompareGE 001 Integer icompareGT 001
Integer icompareLE 001 Integer icompareLT 001 Integer icompareNE 001 Integer idiv 001
Integer imod 001 Integer imul 001 Integer integer 001 Integer isub 001
Integer lcm 001 List addMethod 025 List count 007 List count 008
List defmethod 022 List length 015 List methodsOf 022 List send 020
List sizeof 022 Matrix addMethod 008 Matrix binaryInsert 004 Matrix binaryInsert 005
Matrix cdr 007 Matrix cdr 008 Matrix compare 007 Matrix count 005
Matrix defMethod 009 Matrix delete 009 Matrix insert 005 Matrix inside 005
Matrix isMatrix 001 Matrix isMember 005 Matrix isNumberMatrix 001 Matrix isObject 007
Matrix length 008 Matrix makeGaussianMatrix 001 Matrix makeGramMatrix 001 Matrix matrixGaussianEliminate 001
Matrix matrixGaussianSubstitute 001 Matrix member 005 Matrix methodsOf 010 Matrix rank 001
Matrix ref 015 Matrix ref 016 Matrix resize 005 Matrix sizeof 007
Matrix uniqueInsert 004 Matrix vectorFill 002 NumMatrix addMethod 027 NumMatrix binaryInsert 007
NumMatrix cdr 011 NumMatrix compare 023 NumMatrix count 009 NumMatrix defmethod 024
NumMatrix delete 014 NumMatrix insert 009 NumMatrix inside 009 NumMatrix isMember 010
NumMatrix isNumberMatrix 001 NumMatrix isObject 014 NumMatrix length 017 NumMatrix makeGaussianMatrix 001
NumMatrix makeGramMatrix 001 NumMatrix matrixGaussianEliminate 001 NumMatrix matrixGaussianSubstitute 001 NumMatrix member 009
NumMatrix methodsOf 024 NumMatrix rank 002 NumMatrix ref 035 NumMatrix resize 011
NumMatrix sizeof 028 NumMatrix uniqueInsert 005 NumMatrix vectorFill 008 NumVector addMethod 021
NumVector binaryInsert 006 NumVector cdr 008 NumVector compare 016 NumVector defmethod 019
NumVector delete 011 NumVector insert 007 NumVector inside 006 NumVector isMember 006
NumVector isNumberVector 001 NumVector isObject 009 NumVector length 010 NumVector member 006
NumVector methodsOf 019 NumVector objectToNumVector 001 NumVector ref 024 NumVector resize 008
NumVector sizeof 016 NumVector svmRegression 001 NumVector uniqueInsert 006 NumVector vectorFill 005
Number addMethod 014 Number asin 001 Number atan 001 Number avg 001
Number compare 011 Number cos 001 Number cosh 001 Number defmethod 014
Number deg 001 Number exp 001 Number floor 001 Number kurtosis 001
Number log 001 Number log10 001 Number log2 001 Number logbase 001
Number max 001 Number median 001 Number methodsOf 014 Number min 001
Number mod 001 Number modi 001 Number nadd 001 Number ncompareGE 001
Number ncompareGT 001 Number ncompareLE 001 Number ncompareLT 001 Number ndiv 001
Number nmod 001 Number nmul 001 Number nsub 001 Number number 001
Number pi 001 Number product 001 Number rad 001 Number random 001
Number randomize 001 Number range 001 Number round 001 Number send 012
Number sign 001 Number sin 001 Number sinh 001 Number sizeof 011
Number skew 001 Number sqrt 001 Number srandom 001 Number stdev 001
Number stdevp 001 Number sumsqr 001 Number tan 001 Number tanh 001
Number var 001 Number varp 001 ObjVector addMethod 022 ObjVector cdr 009
ObjVector compare 017 ObjVector delete 012 ObjVector insert 008 ObjVector isMember 007
ObjVector isObject 010 ObjVector isObjectVector 001 ObjVector length 011 ObjVector member 007
ObjVector ref 025 ObjVector resize 009 ObjVector sizeof 017 ObjVector uniqueInsert 007
ObjVector vectorFill 006 ObjectRepository addMethod 026 ObjectRepository defmethod 023 ObjectRepository delete 013
ObjectRepository methodsOf 023 ObjectRepository send 026 Pair addMethod 024 Pair compare 019
Pair compareEQ 019 Pair compareGE 019 Pair compareGT 019 Pair compareLE 019
Pair compareLT 019 Pair compareNE 019 Pair comparison 019 Pair count 006
Pair defmethod 021 Pair length 014 Pair methodsOf 021 Pair send 019
Pair sizeof 021 PcodeVector isObject 011 PcodeVector isPcodeVector 001 PcodeVector length 012
PcodeVector methodsOf 020 PcodeVector ref 026 PcodeVector sizeof 018 ShortVector addMethod 021
ShortVector binaryInsert 006 ShortVector cdr 008 ShortVector compare 016 ShortVector defmethod 019
ShortVector delete 011 ShortVector insert 007 ShortVector inside 006 ShortVector isMember 006
ShortVector isObject 009 ShortVector length 010 ShortVector member 006 ShortVector methodsOf 019
ShortVector ref 024 ShortVector resize 008 ShortVector sizeof 016 ShortVector uniqueInsert 007
ShortVector vectorFill 005 String code 001 String compare 001 String compareEQ 001
String compareGE 001 String compareGT 001 String compareLE 001 String compareLT 001
String compareNE 001 String find 001 String find 002 String hashString 001
String isChar 001 String isCharAlphabetic 001 String isCharAlphanumeric 001 String isCharLowercase 001
String isCharName 001 String isCharNumeric 001 String isCharUppercase 001 String isCharWhitespace 001
String isEqual 001 String isEqual 002 String isObject 001 String isString 001
String isText 001 String isType 001 String isType 002 String isType 003
String left 001 String length 001 String length 002 String mid 001
String new 001 String parse 001 String ref 001 String ref 002
String replace 001 String rept 001 String right 001 String setq 001
String sizeof 001 String string 001 String string 002 String string 003
String stringCiEQ 001 String stringCiGE 001 String stringCiGT 001 String stringCiLE 001
String stringCiLT 001 String stringCiNE 001 String substitute 001 String substitute 002
String substring 001 String substring 002 String substringCiEQ 001 String substringCiGE 001
String substringCiGT 001 String substringCiLE 001 String substringCiLT 001 String substringCiNE 001
String text 001 String type 001 Structure addMethod 003 Structure addMethod 004
Structure append 004 Structure append 005 Structure apply 001 Structure apply 002
Structure binaryInsert 001 Structure binarySearch 001 Structure cdr 001 Structure cdr 002
Structure compareEQ 003 Structure compareGE 003 Structure compareGT 003 Structure compareLE 003
Structure compareLT 003 Structure compareNE 003 Structure comparison functions 003 Structure copy 001
Structure count 001 Structure defineStructure 001 Structure defineStructure 002 Structure defineStructure 003
Structure defmethod 004 Structure defmethod 005 Structure defstruct 001 Structure defstruct 002
Structure delete 001 Structure delete 002 Structure fieldsOf 001 Structure insert 001
Structure inside 001 Structure isAtom 001 Structure isBound 001 Structure isEqual 001
Structure isIdentical 001 Structure isInside 001 Structure isMember 001 Structure isObject 003
Structure isStructure 001 Structure isType 005 Structure length 004 Structure makeStructure 001
Structure makeStructure 002 Structure map 001 Structure mapc 001 Structure member 001
Structure methodsOf 005 Structure new 003 Structure objectToStructure 001 Structure objectToStructure 002
Structure objectToStructure 003 Structure objectToStructure 004 Structure ref 004 Structure ref 006
Structure refAttributes 001 Structure refValues 001 Structure remove 001 Structure resize 001
Structure send 003 Structure setAttributes 001 Structure setCdr 001 Structure setCdr 002
Structure setLastCdr 001 Structure setq 003 Structure setq 004 Structure setq 005
Structure setq 006 Structure sizeof 003 Structure sort 001 Structure sort 002
Structure sort 003 Structure type 003 Structure type 004 Structure type 005
Structure uniqueInsert 001 Structure uniqueInsert 002 Symbol *< 001 Symbol ++ 001
Symbol +< 001 Symbol -- 001 Symbol -< 001 Symbol /< 001
Symbol addMethod 002 Symbol append 003 Symbol compare 002 Symbol compareEQ 002
Symbol compareGE 002 Symbol compareGT 002 Symbol compareLE 002 Symbol compareLT 002
Symbol compareNE 002 Symbol comparison functions 002 Symbol defMethod 003 Symbol downcase 002
Symbol getGlobalValue 001 Symbol getGlobalValue 002 Symbol getSymbolTable 001 Symbol getSymbolTable 002
Symbol hashString 002 Symbol isCharAlphabetic 002 Symbol isCharAlphanumeric 002 Symbol isCharLowercase 002
Symbol isCharName 002 Symbol isCharNumeric 002 Symbol isCharUppercase 002 Symbol isCharWhitespace 002
Symbol isObject 002 Symbol isSymbol 001 Symbol isType 004 Symbol length 003
Symbol methodsOf 004 Symbol new 002 Symbol proplist 001 Symbol proprecord 001
Symbol putprop 001 Symbol ref 003 Symbol remProp 001 Symbol setq 001
Symbol setq 002 Symbol sizeof 002 Symbol symbol 001 Symbol symbol 002
Symbol type 002 Symbol upcase 004 Vector addMethod 007 Vector binaryInsert 002
Vector binaryInsert 003 Vector cdr 005 Vector cdr 006 Vector compare 006
Vector count 004 Vector defmethod 008 Vector delete 007 Vector delete 008
Vector insert 004 Vector inside 004 Vector isMember 004 Vector isObject 006
Vector isVector 001 Vector length 007 Vector member 004 Vector methodsOf 009
Vector objectToVector 001 Vector ref 013 Vector ref 014 Vector refAttributes 004
Vector refValues 004 Vector resize 004 Vector setAttributes 004 Vector setAttributes 005
Vector setBlock 001 Vector sizeof 006 Vector uniqueInsert 003 Vector vectorFill 001
Void addMethod 009 Void addMethod 010 Void compare 008 Void defmethod 010
Void defmethod 011 Void methodsOf 011 Void ref 017 Void sizeof 008
substringEQ 001 substringGE 001 substringGT 001 substringLE 001
substringLT 001 substringNE 001

How do I contact the AIS Server team?

You can always talk with the AIS at aiserver.sourceforge.net.