Sav.Z
Class Statement

java.lang.Object
  |
  +--Sav.Z.Statement
All Implemented Interfaces:
Sav.Z.Lexis

public class Statement
extends java.lang.Object
implements Sav.Z.Lexis

An object that represents a Zigzag statement and forms a Script. Statement corresponds to some string fragment, usually separated by ";".

Below the code prints Statements of a Script and marks the failure Statements.

  Session ss = new Session();
  Script scr = new Script(text);
  ss.analyse(scr):
  Statement[] stmArray = scr.statements();
  if (ss.hasErrors()) {
    ...
  }
  Statement stm = null;
  try {
    ss.execute(scr);
  } catch (ZException exc) {
    stm = ss.curStatement();
  }
  System.out.println("EXECUTION TRACE");
  for (int i = 0; i < stmArray.length; ++i) {
    System.out.print(stmArray[i]);
    if (stmArray[i].hasFailures())
      System.out.println(" - FAILURE");
    else
      System.out.println();
    if (stmArray[i] == stm) {
      System.out.print("INTERRUPTION LINE: " + stm.getLineNumber());
      break;
    }
  }
 

See Also:
Script.statements()

Field Summary
static int BASE
           
static int BRACE
           
static int BRACE_TERM
           
static int BRACKET
           
static int BRACKET_TERM
           
static int CATEGORY
           
static int COLON
           
static int COMMA
           
static int CONJUNCTIVE
           
static int DECLARATION
           
static int DECLARED
           
static int DELIVERED
           
static int DESCRIPTIVE
           
static int DIVIDE
           
static int ELLIPSIS
           
static int EQUALITY
           
static int EXTRACTION
           
static int FILE
           
static int INEQUALITY
           
static java.lang.String KEYS
           
static int LEFT_SLASH
           
static int MULTITUDE
           
static int NONE
           
static int NUMBER
           
static int P1
           
static int P2
           
static int PARENTHESIS
           
static int PARENTHESIS_TERM
           
static int PROCEDURE
           
static int QUOTE
           
static int RANGE
           
static int RIGHT_SLASH
           
static int SPACE
           
static int SPECIFICATION
           
static int STRING
           
static int TERMINATION
           
static int WORD
           
 
Method Summary
 int begin()
          Returns begin position of a Statement in a text string.
 int end()
          Returns end position of a Statement in a text string.
 Error[] errors()
          Returns array of Errors produced by Script analysis.
 java.lang.String express()
          Returns string of a Statement expressions from expressBegin() to expressEnd() position.
 int expressBegin()
          Returns a begin position of a Statement expressions in a text string.
 int expressEnd()
          Returns end position of a Statement expressions in a text string.
 Failure[] failures()
          Returns array of Failures produced by Script execution.
 int getLineNumber()
          Returns line number of a Statement in a Script.
 boolean hasErrors()
          Tests to see if Statement has Errors.
 boolean hasFailures()
          Tests to see if Statement has Failures.
 boolean hasWarnings()
          Tests to see if Statement has Warnings.
 boolean isEmpty()
          Tests if a Statement is empty.
 java.lang.String rightExpression()
          Returns string of corrected Statement expression (without ";\n"), or returns "" empty string.
 java.lang.String toString()
          Returns string of a Statement.
 Warning[] warnings()
          Returns array of Warnings, namely Errors or Failures, produced by Script analysis or execution.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

KEYS

public static final java.lang.String KEYS

NONE

public static final int NONE

CATEGORY

public static final int CATEGORY

PROCEDURE

public static final int PROCEDURE

MULTITUDE

public static final int MULTITUDE

FILE

public static final int FILE

BASE

public static final int BASE

SPECIFICATION

public static final int SPECIFICATION

ELLIPSIS

public static final int ELLIPSIS

NUMBER

public static final int NUMBER

STRING

public static final int STRING

QUOTE

public static final int QUOTE

WORD

public static final int WORD

SPACE

public static final int SPACE

BRACE

public static final int BRACE

BRACKET

public static final int BRACKET

PARENTHESIS

public static final int PARENTHESIS

BRACE_TERM

public static final int BRACE_TERM

BRACKET_TERM

public static final int BRACKET_TERM

PARENTHESIS_TERM

public static final int PARENTHESIS_TERM

RANGE

public static final int RANGE

COLON

public static final int COLON

DIVIDE

public static final int DIVIDE

LEFT_SLASH

public static final int LEFT_SLASH

RIGHT_SLASH

public static final int RIGHT_SLASH

EXTRACTION

public static final int EXTRACTION

INEQUALITY

public static final int INEQUALITY

EQUALITY

public static final int EQUALITY

DECLARATION

public static final int DECLARATION

COMMA

public static final int COMMA

TERMINATION

public static final int TERMINATION

P1

public static final int P1

DESCRIPTIVE

public static final int DESCRIPTIVE

CONJUNCTIVE

public static final int CONJUNCTIVE

P2

public static final int P2

DELIVERED

public static final int DELIVERED

DECLARED

public static final int DECLARED
Method Detail

isEmpty

public boolean isEmpty()
Tests if a Statement is empty.
Returns:
true, if Statement is formed by empty or error string

expressBegin

public int expressBegin()
Returns a begin position of a Statement expressions in a text string. Statement expressions begin after first Statement characters: blank, line, tab, comment.

expressEnd

public int expressEnd()
Returns end position of a Statement expressions in a text string. Statement expressions end on a last Statement character: semicolon, blank, line, tab, or comment.

express

public java.lang.String express()
Returns string of a Statement expressions from expressBegin() to expressEnd() position.

begin

public int begin()
Returns begin position of a Statement in a text string. Statement may begin from any characters.

end

public int end()
Returns end position of a Statement in a text string.

toString

public java.lang.String toString()
Returns string of a Statement.
Overrides:
toString in class java.lang.Object

getLineNumber

public int getLineNumber()
Returns line number of a Statement in a Script.

rightExpression

public java.lang.String rightExpression()
Returns string of corrected Statement expression (without ";\n"), or returns "" empty string.

hasWarnings

public boolean hasWarnings()
Tests to see if Statement has Warnings.
See Also:
warnings()

hasErrors

public boolean hasErrors()
Tests to see if Statement has Errors.
See Also:
errors()

hasFailures

public boolean hasFailures()
Tests to see if Statement has Failures.
See Also:
failures()

warnings

public Warning[] warnings()
Returns array of Warnings, namely Errors or Failures, produced by Script analysis or execution.
See Also:
hasWarnings()

errors

public Error[] errors()
Returns array of Errors produced by Script analysis.
See Also:
hasErrors()

failures

public Failure[] failures()
Returns array of Failures produced by Script execution.
See Also:
hasFailures()