include/antlr3collections.h - Online Linux Manual PageSection : 3
Updated : Tue Jan 26 2021
Source : Version 3.3.1
Note : ANTLR3C

NAMEinclude/antlr3collections.h

SYNOPSIS
#include <antlr3defs​.h>
#include <antlr3bitset​.h>

Data Structuresstruct ANTLR3_HASH_BUCKET_struct
Internal structure of a hash table bucket, which tracks all keys that hash to the same bucket​.
struct ANTLR3_HASH_ENTRY_struct
Internal structure representing an element in a hash bucket​.
struct ANTLR3_HASH_ENUM_struct
Internal structure representing an enumeration of a table​.
struct ANTLR3_HASH_KEY_struct
struct ANTLR3_HASH_TABLE_struct
Structure that tracks a hash table​.
struct ANTLR3_INT_TRIE_NODE_struct
Structure that defines an element/node in an ANTLR3_INT_TRIE​.
struct ANTLR3_INT_TRIE_struct
Structure that defines an ANTLR3_INT_TRIE​.
struct ANTLR3_LIST_struct
Structure that represents a LIST collection​.
struct ANTLR3_STACK_struct
Structure that represents a Stack collection​.
struct ANTLR3_TOPO_struct
A topological sort system that given a set of dependencies of a node m on node n, can sort them in dependency order​.
struct ANTLR3_TRIE_ENTRY_struct
Structure that holds the payload entry in an ANTLR3_INT_TRIE or ANTLR3_STRING_TRIE​.
struct ANTLR3_VECTOR_ELEMENT_struct
struct ANTLR3_VECTOR_FACTORY_struct
Structure that tracks vectors in a vector and auto deletes the vectors in the vector factory when closed​.
struct ANTLR3_VECTOR_struct

Macros#define ANTLR3_FACTORY_VPOOL_SIZE 256
Default vector pool size if otherwise unspecified​.
#define ANTLR3_HASH_TYPE_INT 0
Indicates the hashed file has integer keys​.
#define ANTLR3_HASH_TYPE_STR 1
Indicates the hashed file has numeric keys​.
#define ANTLR3_VECTOR_INTERNAL_SIZE 16

Typedefstypedef struct ANTLR3_HASH_BUCKET_struct ANTLR3_HASH_BUCKET
Internal structure of a hash table bucket, which tracks all keys that hash to the same bucket​.
typedef struct ANTLR3_HASH_ENTRY_struct ANTLR3_HASH_ENTRY
Internal structure representing an element in a hash bucket​.
typedef struct ANTLR3_HASH_ENUM_struct ANTLR3_HASH_ENUM
Internal structure representing an enumeration of a table​.
typedef struct ANTLR3_HASH_KEY_struct ANTLR3_HASH_KEY
typedef struct ANTLR3_HASH_TABLE_struct ANTLR3_HASH_TABLE
Structure that tracks a hash table​.
typedef struct ANTLR3_INT_TRIE_struct ANTLR3_INT_TRIE
Structure that defines an ANTLR3_INT_TRIE​.
typedef struct ANTLR3_INT_TRIE_NODE_struct ANTLR3_INT_TRIE_NODE
Structure that defines an element/node in an ANTLR3_INT_TRIE​.
typedef struct ANTLR3_LIST_struct ANTLR3_LIST
Structure that represents a LIST collection​.
typedef struct ANTLR3_STACK_struct ANTLR3_STACK
Structure that represents a Stack collection​.
typedef struct ANTLR3_TOPO_struct ANTLR3_TOPO
A topological sort system that given a set of dependencies of a node m on node n, can sort them in dependency order​.
typedef struct ANTLR3_TRIE_ENTRY_struct ANTLR3_TRIE_ENTRY
Structure that holds the payload entry in an ANTLR3_INT_TRIE or ANTLR3_STRING_TRIE​.
typedef struct ANTLR3_VECTOR_struct ANTLR3_VECTOR
typedef struct ANTLR3_VECTOR_ELEMENT_struct ANTLR3_VECTOR_ELEMENT
typedef struct ANTLR3_VECTOR_FACTORY_struct ANTLR3_VECTOR_FACTORY
Structure that tracks vectors in a vector and auto deletes the vectors in the vector factory when closed​.
typedef struct ANTLR3_HASH_KEY_struct * pANTLR3_HASH_KEY
typedef struct ANTLR3_INT_TRIE_NODE_struct * pANTLR3_INT_TRIE_NODE
typedef struct ANTLR3_TRIE_ENTRY_struct * pANTLR3_TRIE_ENTRY
typedef struct ANTLR3_VECTOR_ELEMENT_struct * pANTLR3_VECTOR_ELEMENT

Macro Definition Documentation

#define ANTLR3_FACTORY_VPOOL_SIZE 256Default vector pool size if otherwise unspecified​.

#define ANTLR3_HASH_TYPE_INT 0Indicates the hashed file has integer keys​.

#define ANTLR3_HASH_TYPE_STR 1Indicates the hashed file has numeric keys​.

#define ANTLR3_VECTOR_INTERNAL_SIZE 16

Typedef Documentation

typedef struct ANTLR3_HASH_BUCKET_struct ANTLR3_HASH_BUCKETInternal structure of a hash table bucket, which tracks all keys that hash to the same bucket​.

typedef struct ANTLR3_HASH_ENTRY_struct ANTLR3_HASH_ENTRYInternal structure representing an element in a hash bucket​. Stores the original key so that duplicate keys can be rejected if necessary, and contains function can be supported​. If the hash key could be unique I would have invented the perfect compression algorithm ;-)

typedef struct ANTLR3_HASH_ENUM_struct ANTLR3_HASH_ENUMInternal structure representing an enumeration of a table​. This is returned by antlr3Enumeration() Allows the programmer to traverse the table in hash order without knowing what is in the actual table​. Note that it is up to the caller to ensure that the table structure does not change in the hash bucket that is currently being enumerated as this structure just tracks the next pointers in the bucket series​.

typedef struct ANTLR3_HASH_KEY_struct ANTLR3_HASH_KEY

typedef struct ANTLR3_HASH_TABLE_struct ANTLR3_HASH_TABLEStructure that tracks a hash table​.

typedef struct ANTLR3_INT_TRIE_struct ANTLR3_INT_TRIEStructure that defines an ANTLR3_INT_TRIE​. For this particular implementation, as you might expect, the key is turned into a 'string' by looking at bit(key, depth) of the integer key​. Using 64 bit keys gives us a depth limit of 64 (or bit 0​.​.63) and potentially a huge trie​. This is the algorithm for a Patricia Trie​. Note also that this trie [can] accept multiple entries for the same key and is therefore a kind of elastic bucket patricia trie​. If you find this code useful, please feel free to 'steal' it for any purpose as covered by the BSD license under which ANTLR is issued​. You can cut the code but as the ANTLR library is only about 50K (Windows Vista), you might find it easier to just link the library​. Please keep all comments and licenses and so on in any version of this you create of course​. Jim Idle​.

typedef struct ANTLR3_INT_TRIE_NODE_struct ANTLR3_INT_TRIE_NODEStructure that defines an element/node in an ANTLR3_INT_TRIE​.

typedef struct ANTLR3_LIST_struct ANTLR3_LISTStructure that represents a LIST collection​.

typedef struct ANTLR3_STACK_struct ANTLR3_STACKStructure that represents a Stack collection​.

typedef struct ANTLR3_TOPO_struct ANTLR3_TOPOA topological sort system that given a set of dependencies of a node m on node n, can sort them in dependency order​. This is a generally useful utility object that does not care what the things are it is sorting​. Generally the set to be sorted will be numeric indexes into some other structure such as an ANTLR3_VECTOR​. I have provided a sort method that given ANTLR3_VECTOR as an input will sort the vector entries in place, as well as a sort method that just returns an array of the sorted noded indexes, in case you are not sorting ANTLR3_VECTORS but some set of your own device​. Of the two main algorithms that could be used, I chose to use the depth first search for unvisited nodes as a) This runs in linear time, and b) it is what we used in the ANTLR Tool to perform a topological sort of the input grammar files based on their dependencies​.

typedef struct ANTLR3_TRIE_ENTRY_struct ANTLR3_TRIE_ENTRYStructure that holds the payload entry in an ANTLR3_INT_TRIE or ANTLR3_STRING_TRIE​.

typedef struct ANTLR3_VECTOR_struct ANTLR3_VECTOR

typedef struct ANTLR3_VECTOR_ELEMENT_struct ANTLR3_VECTOR_ELEMENT

typedef struct ANTLR3_VECTOR_FACTORY_struct ANTLR3_VECTOR_FACTORYStructure that tracks vectors in a vector and auto deletes the vectors in the vector factory when closed​.

typedef struct ANTLR3_HASH_KEY_struct * pANTLR3_HASH_KEY

typedef struct ANTLR3_INT_TRIE_NODE_struct * pANTLR3_INT_TRIE_NODE

typedef struct ANTLR3_TRIE_ENTRY_struct * pANTLR3_TRIE_ENTRY

typedef struct ANTLR3_VECTOR_ELEMENT_struct * pANTLR3_VECTOR_ELEMENT

AuthorGenerated automatically by Doxygen for ANTLR3C from the source code​.
0
Johanes Gumabo
Data Size   :   30,554 byte
man-antlr3-pANTLR3_TRIE_ENTRY.3Build   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   2 / 202,504
Visitor ID   :     :  
Visitor IP   :   3.148.115.43   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.