TextTransformer


TextTransformer Documentation


About this help
Registration
Most essential operation elements
Most essential syntax elements
How to begin with a new project?
Practice
Introduction
How does the TextTransformer work?
Analysis
Synthesis
Regular expressions
Syntax tree
Productions or non-terminal symbols
Productions as functions
Four uses of productions
Looking-ahead
Inclusions / comments
Sub-parser
Family concept
Tests
Examples
Exchange of words
Execution of a project
Production
Analysis step by step
Using tokens
Conversion of an Atari text
Tokens
Productions
Actions
Conversion into RTF
Calculator
Tokens
Production: Calculator1
Production: Expression
Productions: Term and Factor
Production: Number
Return values
Text statistics
Class members
Token
Productions
GrepUrls
Productions
Member variables and methods
Put together
Search in whole directory
BinaryCheck
Look-ahead
Use as preprocessor
E-mail address
Syntax specification
Productions and token
Detecting a conflict
Solving the conflict
Guard
Startrule: guard
Copying source text
Tokens
Productions: block, outer_block
Improvement: '{' and '}' in strings
Bill
Production
Tokens
XML
ISO-XML
XML document
Tree generation
Tree evaluation
Character references
Comments and processing instructions
Insert client data
Unit_dependence
Productions
Containers and parameters
Include files
Java
Coco/R adaptation
Simple look-ahead production
Negative look ahead
Complex look ahead
Debugging a look-ahead
Parse-Tree
Function-Table
C-typedef
Typedef
Scopes
TETRA productions
TETRA-EditProds
TETRA interpreter
TETRA import
TETRA-Management
Cocor import
Ignorable characters
Tokens
Productions
Post processing
Semantic actions
How to ...
Load data
Structure data
Write into additional target files
User interface
Tool bar
Main menu
Menu: File
Menu: Edit
Menu:  Search
Menu: Project
Menu: Start
Menu: Code generation
Menu: Options
User data
Options of the user interface
Transformation
Editing
View
Layouts
Environment options
CONFIG
EXTENSIONS
FRAMES
PATH
File filter
Project options
Names and Directories
Start rule
Test file
Preprocessor
Frame path
Parser/Scanner
Ignorable characters
Case sensitive
Word bounds
Parameter and {{...}}
Global scanner
Look-ahead buffer
Start parameters
Inclusions (comments)
Encoding
xerces DOM
DTD
Warnings/Errors
Stack maximum
Code generation
const
Use wide characters
Only copy all code
Characters and increment of indentation
Operating system
Plugin type
Template parameter for plugin character type
Local options
Local options
Menu: Windows
Docking Windows
Caption Dialog
Window list
Customize layout
Save Layout
Restore default layout
Menu: Help
Feedback
Wizards
New project wizard
Multiple replacements of words
Multiple replacement of strings
Multiple replacements of characters
CSV-wizard
Creating a line parser from an example text
Header/Chapters/Footer
Actions
Creating a production from an example text
Parameter-Wizard
Tree-Wizard
Tree type
Function-Table-Wizard
Quick wizard for function tables
Input tables
Regex test
Character class calculator
ANSI table
Script management and parsing
Tool bar and menu
Insert
Delete
Edit
Cancel
Accept
Rename
Navigation
Parse/Test single script
Parse/Test all connected scripts
Parse/Test all scripts
Error messages
Clear semantic code
Import
Export
Collapsing semantic code
Debugging and executing
Source text
Section of text
Enabling actions
Choosing a start rule
Interactive change of a start rule
Change of the start rule
Parse start rule
Syntax tree
Pop up menu
Show first sets
Start mode
Execution step by step
Execute a look-ahead step-by-step
Execution at a stretch
Checking success
Reset
Mark recognized/expected token
Breakpoints
Text breakpoint
Node breakpoint
Recognized token
Stack window
Variable-Inspector
To the actual position
Info box
Log window
Transformation of groups of files
Transformation manager
Defining a new filter
Select source files
Transformation options
N:N Transformation
Select target directory
Setting pattern for the target files
Backup
N:1: Transformation
Preview of the target files
Start the transformation
Results
Corrections
Roll back
Management
Command line tool
Parameter
Keyboard shortcuts
Block commands
Scripts
Token definitions
Input mask for a token
Name
Return type
Parameter declaration
Comment
Text
Semantic action
Literals
Named literals
Regular expressions
Single characters
Meta-characters
Special characters
Sets of characters
Character classes
Locale dependant features
Collating elements
Equivalence classes
Collating Element Names
Wildcard
Anchors
Concatenation
Groupings
Alternatives
Repeats
Macros
boost regular expression library
Predefined tokens
Identifier
Words
Numbers
Quotes
Dates
Comments
Ignorable
Line break
Binary null
Addresses
Data field
Placeholder
Productions
Input mask for a production
Name
Return type
Parameter declaration
Comment
Text
Elements
Concatenation
Alternatives
Grouping
Repeats
BREAK
EXIT
EOF
ANY
Options
SKIP
Options
IF...ELSE...END
WHILE...END
Actions
Transitional action
Calling parameters
Class elements and c++ instructions
Input mask for class elements
Name
Type
Parameter
Comment
Text/Initialization
List of all instructions
Interpreted C++ instructions
C++
Variable types
bool
char
int
unsigned int
double
str
Searching
Container
vector
Stack
map
cursor
General cursor methods
Function table
node / dnode
node: Construction
node: Information
node::npos
node: Neighbors
node: Searching
dnode specials
const
Operators
Arithmetic operators
Assignment operators
Relational operators
Equality operators
Logical operators
Bitwise operators
Conditional operator
Control structures
if, else
for
while
do
switch
Output
out
log
Binary output
return
break
continue
throw
String manipulation
stod
stoi
hstoi
stoc
dtos
itos
itohs
ctohs
ctos
to_upper_copy
to_lower_copy
trim_left_copy
trim_right_copy
trim_copy
File handling
basename
extension
change_extension
append_path
current_path
exists
is_directory
file_size
find_file
load_file
path_separator
Formatting instructions
How it works
Examples
Syntax
Methods
Other functions
clock_sec
time_stamp
random
Parser class methods
Parser state
Sub-expressions
Plugin methods
Source and target
Start parameters
Redirection
xerces DOM
Indentation stack
Text-scope stack
Dynamic scanner
Error handling
Calling a production
Sub parser
Look-ahead
Events
Test scripts
Name
Group
Comment
Input
Code
Expected output
Test output
Error expected
Algorithms
Scanner algorithm
Parser algorithm
Token sets
Grammar tests
Completeness
Reachable rules
Derivable rules
Non-circularity
LL(1)-Test
Warnings
Nullability
Start of several alternatives
Start and successor of nullable structures
SKIP node with SKIP neighbors
Different SKIP followers
Different ANY followers
Left recursion
Circular look-ahead
Code generation
Code frames
Name of the parser class
Header frame
Implementation frame
main-file frame
Project specific frame
jamfile
Supporting code
Code directory
CTT_Parser
Methods
CTT_ParseState
CTT_Scanner
CTT_Tst, CTT_TstNode
CTT_Match
CTT_Token
CTT_Buffer
CTT_Guard
CTT_Mstrstr
CTT_Mstrfun
CTT_Node
CTT_DomNode
CTT_ParseStatePluginAbs
CTT_ParseStatePlugin
CTT_ParseStateDomPluginAbs
CTT_ParseStateDomPlugin
CTT_RedirectOutput
CTT_Indent
CTT_Xerces
Error handling
Compiler compatibility
License
TetraComponents
Messages
Unknown symbol: "xxx"
"X": can't derive to terminals
Circular derivation: "X" . "Y"
"X" is nullable
LL(1) Error: "X" is the start of several alternatives
LL(1) Warning: "X" is the start and successor of nullable structures
"X" is a SKIP node with SKIP neighbors
Nullable structure in a repetition or option
"X" is used circulary in a look-ahead
Inclusion not found
Conflict with an inclusion
No matching next token found
The rest of the text consists of ignored chars
SKIP token matches at actual position
"SKIP ANY" is not possible
Matching but not accepted token
Matching token not in first set
Matching look-ahead xxx cannot start with yyy
Unexpected symbol in ...
Parenthesis are needed
Unexpected method (also might be ...
"X" expected
Incomplete parse
Missing closing quotation mark
Literal tokens may not be empty
Continuation with c++ code expected
The type of the function xxx doesn't match the function table
No default function is defined for function-table
In a const parser you have to call the according method of State
Sub-expressions (> 0) are not stored in the la-buffer
A production cannot be used as an inclusion
Inclusion with paramters
Inclusions don't work with a la-buffer
State parameter is required
Empty alternative
Error while parsing parameters
Mismatch between declaration and use of parameters
Wrong number of (interpretable) arguments
Not const method
Maximum stack size of "x"exceeded
Error on parsing parameters of the parser call
There is at least one path on which no string value is returned
Recognized, but not accepted token
BREAK outside of a loop
Standstill
Standstill in look ahead
Unknown identifier : xxx
It's not possible to convert "xxx" to "yyy"
No return type declared
"X" cannot be applied on "Y"
break or continue instruction at invalid position
forbidden transitional action
Error output programmed from the user
Cannot add branch
Token error
Matches empty string
Token is defined as string and as token with an action
boost::regex error
System overlap
Token action or member function cannot be exported
Only code for initializations is allowd here!
Parameters and local variables may not be used in a look-ahead production!
Encoding cannot be written into the output window of the IDE
An invalid or illegal XML character is specified
TextTransformer not registered
Internal error: ...
No help
References
References
Glossary
First set
ASCII/ANSI-set
Backtracking
Binary file
Compiler
Control characters
Debug
Deterministic
Escape sequences
Friedl scheme
Interpreter
Lexical analysis
LL(k)-grammar
Numeric systems
Parser
Parser generator
Parse Trees and AST's
Syntax
Start rule
Text file
Top down analysis
Token and lexemes
Unicode
Line breaks
Naming conventions

© 2002-09 Dr. Detlef Meyer-Eltz