java_cup

Class parse_action_row


public class parse_action_row
extends java.lang.Object

This class represents one row (corresponding to one machine state) of the parse action table.

Field Summary

protected static int
_size
Number of columns (terminals) in every row.
int
default_reduce
Default (reduce) action for this row.
protected static int[]
reduction_count
Table of reduction counts (reused by compute_default()).
parse_action[]
under_term
Actual action entries for the row.

Constructor Summary

parse_action_row()
Simple constructor.

Method Summary

static void
clear()
void
compute_default()
Compute the default (reduce) action for this row and store it in default_reduce.
static int
size()
Number of columns (terminals) in every row.

Field Details

_size

protected static int _size
Number of columns (terminals) in every row.

default_reduce

public int default_reduce
Default (reduce) action for this row. -1 will represent default of error.

reduction_count

protected static int[] reduction_count
Table of reduction counts (reused by compute_default()).

under_term

public parse_action[] under_term
Actual action entries for the row.

Constructor Details

parse_action_row

public parse_action_row()
Simple constructor. Note: this should not be used until the number of terminals in the grammar has been established.

Method Details

clear

public static void clear()

compute_default

public void compute_default()
Compute the default (reduce) action for this row and store it in default_reduce. In the case of non-zero default we will have the effect of replacing all errors by that reduction. This may cause us to do erroneous reduces, but will never cause us to shift past the point of the error and never cause an incorrect parse. -1 will be used to encode the fact that no reduction can be used as a default (in which case error will be used).

size

public static int size()
Number of columns (terminals) in every row.