Sack Library Documentation
|
This is namespace sack::containers::text.
Name |
Description |
Simple HTTP Packet processing state. Its only intelligence is that there are fields of http header, and that one of those fields might be content-length; so it can seperate individual fields name-value pairs and the packet content. |
Name |
Description |
The following table lists functions in this documentation. | |
The following table lists structs, records, enums in this documentation. | |
The following table lists types in this documentation. | |
The following table lists macros in this documentation. |
|
Name |
Description |
|
Collapses an indirect segment or a while list of segments into a single segment with content expanded. When passed to things like TextParse and Burst, segments have their positioning encoded to counters for tabs and spaces; the segment itself contains only text without whitespace. Buildline expands these segments into their plain text representation. | |
| ||
| ||
|
This is function sack::containers::text::CharWConvertEx. | |
|
You Must Deallocate the result | |
|
Compares a couple lists of text segments. | |
|
This is function sack::containers::text::ConvertAsciiEbdic. | |
|
This is function sack::containers::text::ConvertEbcdicAscii. | |
|
This is function sack::containers::text::ConvertTextURI. | |
|
This is function sack::containers::text::ConvertURIText. | |
|
This is function sack::containers::text::CreateUserInputBuffer. | |
|
This is function sack::containers::text::DestroyUserInputBuffer. | |
| ||
|
This is function sack::containers::text::EnqueUserInputHistory. | |
|
This removes indirect segments, replacing them with their indirect content. | |
|
This is function sack::containers::text::FloatCreateFromSeg. | |
|
This is function sack::containers::text::FloatCreateFromText. | |
|
This is function sack::containers::text::GatherUserInput. | |
|
similar to GetIndirect - but results in the literal pointer instead of the text that the application may have registered to result with. | |
|
This is function sack::containers::text::GetIndirect. | |
|
This is function sack::containers::text::GetSegmentLength. | |
|
This is function sack::containers::text::GetSegmentLengthEx. | |
|
This is function sack::containers::text::GetSegmentSpace. | |
|
This is function sack::containers::text::GetSegmentSpaceEx. | |
|
This is function sack::containers::text::GetText. | |
|
This is function sack::containers::text::GetTextFlags. | |
|
This is function sack::containers::text::GetTextSize. | |
|
This is function sack::containers::text::IntCreateFromSeg. | |
|
This is function sack::containers::text::IntCreateFromText. | |
|
Tests the content of a PTEXT to see if it might be a number. | |
|
This is function sack::containers::text::LikeText. | |
|
Duplicates a linked list of segments. Duplicates the structure of a line. The resulting line is an exact duplicate of the input line. All segments linked in exactly the same sorts of ways. | |
|
This is function sack::containers::text::LineLengthExEx. | |
|
This is function sack::containers::text::LineLengthExx. | |
|
This is function sack::containers::text::LineReleaseEx. | |
|
This is function sack::containers::text::RecallUserInput. | |
|
by registering for TF_APPLICTION is set on the segment and flags anded with the segment flags match, the function is called.... the result is the actual segment of this - since a TF_APPLICATION is also TF_INDIRECT - using the size to point to some application defined structure instead of a PTEXT structure. | |
|
these return 1 for more(l1>l2) -1 for (l1<l2) and 0 for match. | |
|
This is function sack::containers::text::SegAppend. | |
|
This is function sack::containers::text::SegBreak. | |
|
This is function sack::containers::text::SegConcatEx. | |
|
#define LikeText( l1, l2 ) ( strnicmp( GetText(l1), GetText(l2), textmin( GetTextSize(l1), GetTextSize(l2) ) ) ) #define TextIs(text,string) ( !stricmp( GetText(text), string ) ) #define TextLike(text,string) ( !stricmp( GetText(text), string ) ) | |
|
This is function sack::containers::text::SegCreateFrom_64Ex. | |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
Removes a segment from a list. It also releases the segment. | |
|
| |
|
| |
| ||
|
Inserts a segment before another segment. | |
| ||
|
| |
|
This is function sack::containers::text::SegSubst. | |
|
Removes a segment from a list of segments. Links what was prior and what was after together. Sets both next and prior of the segment unlinked to NULL. | |
|
Used to set the content of a segment to some application defined value. This allows a users application to store chunks of data in lists of text. These external chunks are handled like other words. | |
|
bInsert < 0 toggle insert. bInsert == 0 clear isnert(set overwrite) else set insert (clear overwrite ) | |
|
Updates the current input position, for things like input, etc. Some external process indicates where in the line to set the cursor position. | |
|
| |
| ||
|
Compares if text is like a C string. Case insensitive (like). | |
| ||
|
This is function sack::containers::text::VarTextAddCharacterEx. | |
|
This is function sack::containers::text::VarTextAddDataEx. | |
|
This is function sack::containers::text::VarTextCreateEx. | |
|
This is function sack::containers::text::VarTextCreateExEx. | |
|
This is function sack::containers::text::VarTextDestroyEx. | |
|
Empties a PVARTEXT structure. | |
|
Commits the currently collected text to segment, and adds the segment to the internal line accumulator. returns true if any data was added... move any collected text to commit... | |
|
This is function sack::containers::text::VarTextExpandEx. | |
|
Gets the text segment built in the VarText. The PVARTEXT is set to empty. Clears the collector. | |
|
This is function sack::containers::text::VarTextInitEx. | |
|
This is function sack::containers::text::VarTextLength. | |
|
This is function sack::containers::text::VarTextPeekEx. | |
| ||
|
This is function sack::containers::text::vvtprintf. | |
|
This is function sack::containers::text::WcharConvertEx. | |
|
You Must Deallocate the result |
Name |
Description |
Flattens all segments in a line to a single segment result. | |
Collapses an indirect segment or a while list of segments into a single segment with content expanded. When passed to things like TextParse and Burst, segments have their positioning encoded to counters for tabs and spaces; the segment itself contains only text without whitespace. Buildline expands these segments into their plain text representation. | |
This is macro sack::containers::text::CharWConvert. | |
This is macro sack::containers::text::CharWConvertLen. | |
This is macro sack::containers::text::DECLTEXT. | |
This is macro sack::containers::text::DECLTEXTSZ. | |
This is macro sack::containers::text::DECLTEXTSZTYPE. | |
This is macro sack::containers::text::DEFTEXT. | |
This is macro sack::containers::text::FORALLTEXT. | |
| |
special coordinate which is NO coordinate | |
flag combinatoin which represents actual data is present even with 0 size extended format operations (position, ops) are also considered data. | |
Tests a PTEXT segment to see if it might be a floating point number. | |
IsSegAnyNumber returns 0 if no, 1 if is int, 2 if is float if pfNumber or piNumber are available then the text pointer will be updated to the next segment after what was used to resolve the number. bUseAllSegs is for testing pTexts which are indirect, such that only all segments within the indirect segment will result valid. pfNumber and piNumber may be passed as NULL, and the function can still be used to determine ifnumber the number resulting in the values pointed to will be filled in with (*pfNumber)=FltCreateFromSeg(p) (or Int as appropriate) #define IsNumber(p) IsSegAnyNumberEx( &(p), NULL,... more | |
Tests the content of a PTEXT to see if it might be a number. | |
Duplicates a linked list of segments. Duplicates the structure of a line. The resulting line is an exact duplicate of the input line. All segments linked in exactly the same sorts of ways. | |
Computes the length of characters in a line, if all segments in the line are flattened into a single word. | |
| |
This is macro sack::containers::text::LineLengthExx. | |
Release a line of text. A line may be a single segment. This is the proper way to dispose of PTEXT segments. Any segment in the line may be passed, the first segment is found, and then all segments in the line are deleted. | |
A convenient macro to go from one segment in a line of text to the next segment. | |
A convenient macro to go from one segment in a line of text to the prior segment. | |
This is function sack::containers::text::SegConcatEx. | |
Create a PTEXT with specified number of character capacity. | |
Create a text segment from a _64 bit value. (long long int) | |
Creates a PTEXT segment from a string. | |
| |
Creates a text segment from a floating point value. Probably uses something like '%g' to format output. Fairly limited. | |
Creates a text segment from a 64 bit integer. | |
Creates a PTEXT segment from a string. | |
| |
Creates a PTEXT segment from a string. | |
Creates a text segment that refers to the parameter indirectly. The new segment is not really a clone, but a reference of the original PTEXT. | |
This duplicates a specific segment. It duplicates the first segment of a string. If the segment has indirect data, then the first segment of the indirect data is duplicated. | |
This is macro sack::containers::text::SegExpand. | |
Release a single segment. UNSAFE. Does not respect that it is in a list. | |
Split a PTEXT segment. | |
Sets a PTEXT to the last segment that it points to. | |
Set segment's indirect data. | |
Link one PTEXT segment to another. Sets one half of the links appropriate for usage. | |
Link one PTEXT segment to another. Sets one half of the links appropriate for usage. | |
might also check to see if pseg is an indirect - setting this size would be BAD | |
Duplicate the whole string of text to another string with exactly the same content. | |
test flag, format has position data | |
Adds a single character to a PVARTEXT collector. | |
Adds a single character to a PVARTEXT collector. | |
The simplest, most general way to create a PVARTEXT collector. The most extended vartext creator allows specification of how long the initial buffer is, and how much the buffer expands by when required. This was added to optimize building HUGE SQL queries, working withing 100k buffers that expanded by 50k at a time was a lot less operations than expanding 32 bytes or something at a time. | |
This is function sack::containers::text::VarTextCreateExEx. | |
Destroy a VarText collector. | |
Empties a PVARTEXT structure. | |
Commits the currently collected text to segment, and adds the segment to the internal line accumulator. returns true if any data was added... move any collected text to commit... | |
Add a specified number of characters to the amount of space in the VARTEXT collector. | |
Gets the text segment built in the VarText. The PVARTEXT is set to empty. Clears the collector. | |
Probably should not be exported. Initializes a VARTEXT structure to prepare it for subsequent VarText operations. | |
Returns the PTEXT that is currently in a PVARTEXT. It does not alter the contents of the PVARTEXT. Do not LineRelease this peeked value. | |
This is macro sack::containers::text::WcharConvert. | |
This is macro sack::containers::text::WcharConvertLen. |
|
Name |
Description |
|
negative with SEEK_SET is SEEK_END -nPos | |
|
extended position, added more information reduced color, 16 colors is really all that there are... 4 bits... added bits for extended formatting like blink, bold, wide, high foreground/background values will be sufficient... they retain full informaiton | |
|
these enumerated ops put in the foreground field of a format with a flag of TF_FORMATEX will cause the specified operation to be carried out on a display (not files) or generated into the appropriate sequence (ansi out encode) -- correction this is encoded into its own field for the format size, due to machine optimization, 16 bits were free this was expanded and used for all information a segment may contain extended op, color, attributes, and text, everything short of a font for it...
certainly modifications to current font... italic... more | |
|
A Text segment, it is based on DataBlock that has a length and an addtional region at the end of the structure which contains the text of the segment. Segments may have formatting attributes. Segments may be linked to other segments in a NEXTLINE/PRIORLINE. Segments may have indirect content, which may represent phrases. Sets of segments may represent sentence diagrams. A Pointer to a TEXT type. TEXT is a type I created to provide a variety of functions. One particular application was a common language processor, and I created the TEXT structure to store elements which are... more | |
|
these flags are used in PTEXT.flags member applications may use these flags to group expressions will affect the BuildLine but is not generated by library. ( TF_QUOTE, TF_SQUOTE, TF_BRACKET, TF_BRACE, TF_PAREN, and TF_TAG). | |
|
extended command entry stuff... handles editing buffers with insert/overwrite/copy/paste/etc... | |
|
extended position, added more information reduced color, 16 colors is really all that there are... 4 bits... added bits for extended formatting like blink, bold, wide, high foreground/background values will be sufficient... they retain full informaiton | |
|
extended position, added more information reduced color, 16 colors is really all that there are... 4 bits... added bits for extended formatting like blink, bold, wide, high foreground/background values will be sufficient... they retain full informaiton | |
|
A Text segment, it is based on DataBlock that has a length and an addtional region at the end of the structure which contains the text of the segment. Segments may have formatting attributes. Segments may be linked to other segments in a NEXTLINE/PRIORLINE. Segments may have indirect content, which may represent phrases. Sets of segments may represent sentence diagrams. A Pointer to a TEXT type. TEXT is a type I created to provide a variety of functions. One particular application was a common language processor, and I created the TEXT structure to store elements which are... more | |
|
extended command entry stuff... handles editing buffers with insert/overwrite/copy/paste/etc... | |
|
A Text segment, it is based on DataBlock that has a length and an addtional region at the end of the structure which contains the text of the segment. Segments may have formatting attributes. Segments may be linked to other segments in a NEXTLINE/PRIORLINE. Segments may have indirect content, which may represent phrases. Sets of segments may represent sentence diagrams. A Pointer to a TEXT type. TEXT is a type I created to provide a variety of functions. One particular application was a common language processor, and I created the TEXT structure to store elements which are... more | |
|
extended command entry stuff... handles editing buffers with insert/overwrite/copy/paste/etc... |
Copyright (c) 2000+. All rights reserved.
|
What do you think about this topic? Send feedback!
|