Sack Library Documentation
ContentsIndexReferenceHome
PreviousUpNext
sack::containers::text Namespace

This is namespace sack::containers::text.

Name 
Description 
http 
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. 
 
define BuildLineEx(b,pt,single) BuildLineEx(b,pt,single DBG_SRC
 
normal_punctuation=WIDE("'"\({[<>]}):@%/,;!?=*&$^~#`");
Process a line of PTEXT into another line of PTEXT, but with words parsed as appropriate for common language. 
 
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. 
 
PTEXT DumpText( PTEXT somestring ) PTExT (single data segment with full description r in text) 
 
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. 
 
 
 
 
 
removes segment from any list it might be in, returns segment. This substitutes a text segment 'this' with 'that.
The segment may be substituted by a list of segments. (Replace the word 'the' with ('this','little','apple') ). 
 
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 Sensitive.
Returns
TRUE if they are alike.
FALSE if they are different.
Parameters 
 
Compares if text is like a C string. Case insensitive (like). 
 
text parse - more generic flavor of burst.
static CTEXTSTR normal_punctuation=WIDE("'"\({[<>]}):@%/,;!?=*&$^~#`"); filter_to_space WIDE(" t") 
 
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. 
 
TYPELIB_PROC int vtprintfEx( PVARTEXT pvt DBG_PASS TYPELIB_CALLTYPE CTEXTSTR format, ... ; 
 
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. 
normal_punctuation=WIDE("'"\({[<>]}):@%/,;!?=*&$^~#`");
Process a line of PTEXT into another line of PTEXT, but with words parsed as appropriate for common language. 
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. 
Sets a pointer to PTEXT to the first text segment in the list
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. 
define SameText( l1, l2 ) ( strcmp( GetText(l1), GetText(l2) ) ) 
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. 
TYPELIB_PROC int vtprintfEx( PVARTEXT pvt DBG_PASS TYPELIB_CALLTYPE CTEXTSTR format, ... ; 
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...

  • not sure how to address that issue... there's

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... 
 
TEXT 
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... 
Name 
Description 
This is a string collector type. It has an interface to be able to vtprintf( vartext, "format string", ... ); which appends the specified string to the collected text. 
Created with a commercial version of Doc-O-Matic. In order to make this message disappear you need to register this software. If you have problems registering this software please contact us at support@toolsfactory.com.
Copyright (c) 2000+. All rights reserved.
What do you think about this topic? Send feedback!