gnucemitter.java
来自「plugin for eclipse」· Java 代码 · 共 2,964 行 · 第 1/5 页
JAVA
2,964 行
case LITERAL_enum:
case LITERAL_const:
case LITERAL_void:
case LITERAL_char:
case LITERAL_short:
case LITERAL_int:
case LITERAL_long:
case LITERAL_float:
case LITERAL_double:
case LITERAL_signed:
case LITERAL_unsigned:
case NTypedefName:
case LITERAL_typeof:
case LITERAL___complex:
{
structDeclarationList(_t);
_t = _retTree;
break;
}
case RCURLY:
{
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
rc1 = (TNode)_t;
match(_t,RCURLY);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
tabs--; print( rc1 );
}
}
else if ((_t.getType()==LCURLY)) {
lc2 = (TNode)_t;
match(_t,LCURLY);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( "{" ); tabs++;
}
{
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case LITERAL_volatile:
case LITERAL_struct:
case LITERAL_union:
case LITERAL_enum:
case LITERAL_const:
case LITERAL_void:
case LITERAL_char:
case LITERAL_short:
case LITERAL_int:
case LITERAL_long:
case LITERAL_float:
case LITERAL_double:
case LITERAL_signed:
case LITERAL_unsigned:
case NTypedefName:
case LITERAL_typeof:
case LITERAL___complex:
{
structDeclarationList(_t);
_t = _retTree;
break;
}
case RCURLY:
{
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
rc2 = (TNode)_t;
match(_t,RCURLY);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
tabs--; print( rc2 );
}
}
else if ((_t.getType()==ID)) {
i2 = (TNode)_t;
match(_t,ID);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( i2 );
}
}
else {
throw new NoViableAltException(_t);
}
}
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
reportError(ex);
if (_t!=null) {_t = _t.getNextSibling();}
} else {
throw ex;
}
}
_retTree = _t;
}
public final void structDeclarationList(AST _t) throws RecognitionException {
TNode structDeclarationList_AST_in = (_t == ASTNULL) ? null : (TNode)_t;
try { // for error handling
{
int _cnt2603=0;
_loop2603:
do {
if (_t==null) _t=ASTNULL;
if ((_tokenSet_1.member(_t.getType()))) {
structDeclaration(_t);
_t = _retTree;
if ( inputState.guessing==0 ) {
print( ";" );
}
}
else {
if ( _cnt2603>=1 ) { break _loop2603; } else {throw new NoViableAltException(_t);}
}
_cnt2603++;
} while (true);
}
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
reportError(ex);
if (_t!=null) {_t = _t.getNextSibling();}
} else {
throw ex;
}
}
_retTree = _t;
}
public final void structDeclaration(AST _t) throws RecognitionException {
TNode structDeclaration_AST_in = (_t == ASTNULL) ? null : (TNode)_t;
try { // for error handling
specifierQualifierList(_t);
_t = _retTree;
structDeclaratorList(_t);
_t = _retTree;
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
reportError(ex);
if (_t!=null) {_t = _t.getNextSibling();}
} else {
throw ex;
}
}
_retTree = _t;
}
public final void specifierQualifierList(AST _t) throws RecognitionException {
TNode specifierQualifierList_AST_in = (_t == ASTNULL) ? null : (TNode)_t;
try { // for error handling
{
int _cnt2607=0;
_loop2607:
do {
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case LITERAL_struct:
case LITERAL_union:
case LITERAL_enum:
case LITERAL_void:
case LITERAL_char:
case LITERAL_short:
case LITERAL_int:
case LITERAL_long:
case LITERAL_float:
case LITERAL_double:
case LITERAL_signed:
case LITERAL_unsigned:
case NTypedefName:
case LITERAL_typeof:
case LITERAL___complex:
{
typeSpecifier(_t);
_t = _retTree;
break;
}
case LITERAL_volatile:
case LITERAL_const:
{
typeQualifier(_t);
_t = _retTree;
break;
}
default:
{
if ( _cnt2607>=1 ) { break _loop2607; } else {throw new NoViableAltException(_t);}
}
}
_cnt2607++;
} while (true);
}
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
reportError(ex);
if (_t!=null) {_t = _t.getNextSibling();}
} else {
throw ex;
}
}
_retTree = _t;
}
public final void structDeclaratorList(AST _t) throws RecognitionException {
TNode structDeclaratorList_AST_in = (_t == ASTNULL) ? null : (TNode)_t;
try { // for error handling
structDeclarator(_t);
_t = _retTree;
{
_loop2610:
do {
if (_t==null) _t=ASTNULL;
if ((_t.getType()==NStructDeclarator)) {
if ( inputState.guessing==0 ) {
print(",");
}
structDeclarator(_t);
_t = _retTree;
}
else {
break _loop2610;
}
} while (true);
}
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
reportError(ex);
if (_t!=null) {_t = _t.getNextSibling();}
} else {
throw ex;
}
}
_retTree = _t;
}
public final void structDeclarator(AST _t) throws RecognitionException {
TNode structDeclarator_AST_in = (_t == ASTNULL) ? null : (TNode)_t;
TNode c = null;
try { // for error handling
AST __t2612 = _t;
TNode tmp7_AST_in = (TNode)_t;
match(_t,NStructDeclarator);
_t = _t.getFirstChild();
{
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case NDeclarator:
{
declarator(_t);
_t = _retTree;
break;
}
case 3:
case COLON:
case NAsmAttribute:
case LITERAL___attribute:
{
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
{
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case COLON:
{
c = (TNode)_t;
match(_t,COLON);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( c );
}
expr(_t);
_t = _retTree;
break;
}
case 3:
case NAsmAttribute:
case LITERAL___attribute:
{
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
{
_loop2616:
do {
if (_t==null) _t=ASTNULL;
if ((_t.getType()==NAsmAttribute||_t.getType()==LITERAL___attribute)) {
attributeDecl(_t);
_t = _retTree;
}
else {
break _loop2616;
}
} while (true);
}
_t = __t2612;
_t = _t.getNextSibling();
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
reportError(ex);
if (_t!=null) {_t = _t.getNextSibling();}
} else {
throw ex;
}
}
_retTree = _t;
}
public final void declarator(AST _t) throws RecognitionException {
TNode declarator_AST_in = (_t == ASTNULL) ? null : (TNode)_t;
TNode id = null;
TNode lp = null;
TNode rp = null;
TNode n = null;
TNode r = null;
TNode lb = null;
TNode rb = null;
try { // for error handling
AST __t2662 = _t;
TNode tmp8_AST_in = (TNode)_t;
match(_t,NDeclarator);
_t = _t.getFirstChild();
{
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case NPointerGroup:
{
pointerGroup(_t);
_t = _retTree;
break;
}
case ID:
case LPAREN:
{
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
{
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case ID:
{
id = (TNode)_t;
match(_t,ID);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( id );
}
break;
}
case LPAREN:
{
lp = (TNode)_t;
match(_t,LPAREN);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( lp );
}
declarator(_t);
_t = _retTree;
rp = (TNode)_t;
match(_t,RPAREN);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( rp );
}
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
{
_loop2670:
do {
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case NParameterTypeList:
{
AST __t2666 = _t;
n = _t==ASTNULL ? null :(TNode)_t;
match(_t,NParameterTypeList);
_t = _t.getFirstChild();
if ( inputState.guessing==0 ) {
print( n );
}
{
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case NParameterDeclaration:
{
parameterTypeList(_t);
_t = _retTree;
break;
}
case ID:
case RPAREN:
{
{
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case ID:
{
idList(_t);
_t = _retTree;
break;
}
case RPAREN:
{
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
r = (TNode)_t;
match(_t,RPAREN);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( r );
}
_t = __t2666;
_t = _t.getNextSibling();
break;
}
case LBRACKET:
{
lb = (TNode)_t;
match(_t,LBRACKET);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( lb );
}
{
if (_t==null) _t=ASTNULL;
switch ( _t.getType()) {
case ID:
case ASSIGN:
case STAR:
case LPAREN:
case DIV_ASSIGN:
case PLUS_ASSIGN:
case MINUS_ASSIGN:
case STAR_ASSIGN:
case MOD_ASSIGN:
case RSHIFT_ASSIGN:
case LSHIFT_ASSIGN:
case BAND_ASSIGN:
case BOR_ASSIGN:
case BXOR_ASSIGN:
case QUESTION:
case LOR:
case LAND:
case BOR:
case BXOR:
case BAND:
case EQUAL:
case NOT_EQUAL:
case LT:
case LTE:
case GT:
case GTE:
case LSHIFT:
case RSHIFT:
case PLUS:
case MINUS:
case DIV:
case MOD:
case INC:
case DEC:
case LITERAL_sizeof:
case CharLiteral:
case NCast:
case NExpressionGroup:
case NInitializer:
case NEmptyExpression:
case NCommaExpr:
case NUnaryExpr:
case NPostfixExpr:
case NRangeExpr:
case NStringSeq:
case NLcurlyInitializer:
case NGnuAsmExpr:
case Number:
case LITERAL___alignof:
{
expr(_t);
_t = _retTree;
break;
}
case RBRACKET:
{
break;
}
default:
{
throw new NoViableAltException(_t);
}
}
}
rb = (TNode)_t;
match(_t,RBRACKET);
_t = _t.getNextSibling();
if ( inputState.guessing==0 ) {
print( rb );
}
break;
}
default:
{
break _loop2670;
}
}
} while (true);
}
_t = __t2662;
_t = _t.getNextSibling();
}
catch (RecognitionException ex) {
if (inputState.guessing==0) {
reportError(ex);
if (_t!=null) {_t = _t.getNextSibling();}
} else {
throw ex;
}
}
_retTree = _t;
}
public final void enumList(AST _t) throws RecognitionException {
TNode enumList_AST_in = (_t == ASTNULL) ? null : (TNode)_t;
try { // for error handling
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?