com.unitesk.atp.tree.generation
Interface TextGenerator

All Superinterfaces:
Generator
All Known Implementing Classes:
TextGeneratorClient, TextGeneratorServer, TextGeneratorVisitor

public interface TextGenerator
extends Generator

The base interface of text generation from attributed tree.

Version:
$Id: TextGenerator.java,v 1.1 2004/10/09 06:28:48 all-x Exp $
Author:
Alexey Demakov

Field Summary
static String endl
          Line separator string.
 
Fields inherited from interface com.unitesk.atp.text.generation.Generator
DEFAULT_NAME
 
Method Summary
 void decIndent()
          Decreases indent level at one indent step.
 int getIndent()
          Returns the current indent level.
 Node getNode()
          Returns current node.
 void incIndent()
          Increases indent level at one indent step.
 void list(String index, int start, int end, String str, String separator)
          Prints list of strings.
 void nl()
          Starts a new line of text.
 void popIndent()
          Restores previous indent level.
 void popNode()
          Restore previous node.
 void pushIndent(int indent)
          Makes indent current indent level.
 void pushNode(Node node)
          Sets default node for all operations with attributes.
 
Methods inherited from interface com.unitesk.atp.text.generation.Generator
getFunction, getVariable, setFunction, setVariable, txt, txtAsIs
 

Field Detail

endl

static final String endl
Line separator string.

Method Detail

pushNode

void pushNode(Node node)
Sets default node for all operations with attributes.

Parameters:
node - The new default node.

getNode

Node getNode()
Returns current node.

Returns:
The current node.

popNode

void popNode()
Restore previous node.


pushIndent

void pushIndent(int indent)
Makes indent current indent level. The previous indent level can be restored by popIndent()

Parameters:
indent - the new indent level
Throws:
IllegalArgumentException - if indent is negative

getIndent

int getIndent()
Returns the current indent level.

Returns:
The current indent level.

incIndent

void incIndent()
Increases indent level at one indent step. The previous indent level can be restored by popIndent()


decIndent

void decIndent()
Decreases indent level at one indent step. The previous indent level can be restored by popIndent()

Throws:
IllegalArgumentException - if resulting indent level is negative

popIndent

void popIndent()
Restores previous indent level.

Throws:
EmptyStackException - if indent level was not set
See Also:
pushIndent(int), incIndent(), decIndent()

list

void list(String index,
          int start,
          int end,
          String str,
          String separator)
Prints list of strings.

Parameters:
index - The variable name to store current index of list element.
start - The starting value of an index
end - if start < end then
  index is increased by 1 from start to end - 1
if start > end then
  index is decreased by 1 from start - 1 to end
if start == end then
  no actions
str - The string to print for each list element using txt( str )
separator - The separator to print between strings for list elements using txt( str )
Throws:
NullPointerException - if any parameter is null (except separator)

nl

void nl()
Starts a new line of text.



Copyright © 2001-2006 ISP RAS, RedVerst Group. All Rights Reserved.