net.cscott.sdr.calls.ast
Class AstParser
java.lang.Object
org.antlr.runtime.BaseRecognizer
org.antlr.runtime.Parser
net.cscott.sdr.calls.ast.AstParser
public class AstParser
- extends org.antlr.runtime.Parser
Simple lisp-like grammar for printing/scanning AstNode
trees.
If this were simpler and more lisp-like, I wouldn't need ANTLR to parse it!
- Tests:
Simple conversion:
js> new AstParser("(Seq (Prim -1, in 1, none, 1))").ast()
(Seq (Prim -1, in 1, none, 1))
White space is ignored:
js> new AstParser("( Seq\n (Prim\tin\r-1 , 1 , none ,1 ) ) ").ast()
(Seq (Prim in -1, 1, none, 1))
Call names, predicates, formations, etc can be quoted:
js> new AstParser("(Condition \"Condition\" (Condition \"If\") (Condition \"Prim\"))").ast()
(Condition Condition (Condition If) (Condition Prim))
Keywords ought to be ignored in call names, etc.
js> new AstParser("(Condition Condition (Condition If) (Condition Prim))").ast()
(Condition Condition (Condition If) (Condition Prim))
Fields inherited from class org.antlr.runtime.Parser |
input |
Fields inherited from class org.antlr.runtime.BaseRecognizer |
DEFAULT_TOKEN_CHANNEL, HIDDEN, INITIAL_FOLLOW_STACK_SIZE, MEMO_RULE_FAILED, MEMO_RULE_UNKNOWN, NEXT_TOKEN_RULE_NAME, state |
Constructor Summary |
AstParser(String s)
|
AstParser(org.antlr.runtime.TokenStream input)
|
AstParser(org.antlr.runtime.TokenStream input,
org.antlr.runtime.RecognizerSharedState state)
|
Methods inherited from class org.antlr.runtime.Parser |
getCurrentInputSymbol, getMissingSymbol, getSourceName, getTokenStream, reset, setTokenStream, traceIn, traceOut |
Methods inherited from class org.antlr.runtime.BaseRecognizer |
alreadyParsedRule, beginResync, combineFollows, computeContextSensitiveRuleFOLLOW, computeErrorRecoverySet, consumeUntil, consumeUntil, displayRecognitionError, emitErrorMessage, endResync, getBacktrackingLevel, getErrorHeader, getErrorMessage, getNumberOfSyntaxErrors, getRuleInvocationStack, getRuleInvocationStack, getRuleMemoization, getRuleMemoizationCacheSize, getTokenErrorDisplay, match, matchAny, memoize, mismatch, mismatchIsMissingToken, mismatchIsUnwantedToken, pushFollow, recover, recoverFromMismatchedSet, recoverFromMismatchedToken, reportError, toStrings, traceIn, traceOut |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
tokenNames
public static final String[] tokenNames
WS
public static final int WS
- See Also:
- Constant Field Values
T__16
public static final int T__16
- See Also:
- Constant Field Values
T__15
public static final int T__15
- See Also:
- Constant Field Values
T__18
public static final int T__18
- See Also:
- Constant Field Values
T__17
public static final int T__17
- See Also:
- Constant Field Values
T__12
public static final int T__12
- See Also:
- Constant Field Values
T__11
public static final int T__11
- See Also:
- Constant Field Values
T__14
public static final int T__14
- See Also:
- Constant Field Values
T__13
public static final int T__13
- See Also:
- Constant Field Values
T__10
public static final int T__10
- See Also:
- Constant Field Values
IDENT
public static final int IDENT
- See Also:
- Constant Field Values
INT
public static final int INT
- See Also:
- Constant Field Values
EOF
public static final int EOF
- See Also:
- Constant Field Values
T__9
public static final int T__9
- See Also:
- Constant Field Values
T__8
public static final int T__8
- See Also:
- Constant Field Values
STRING
public static final int STRING
- See Also:
- Constant Field Values
FOLLOW_comp_in_ast53
public static final org.antlr.runtime.BitSet FOLLOW_comp_in_ast53
FOLLOW_condition_in_ast63
public static final org.antlr.runtime.BitSet FOLLOW_condition_in_ast63
FOLLOW_optcall_in_ast73
public static final org.antlr.runtime.BitSet FOLLOW_optcall_in_ast73
FOLLOW_parcall_in_ast83
public static final org.antlr.runtime.BitSet FOLLOW_parcall_in_ast83
FOLLOW_seqcall_in_ast93
public static final org.antlr.runtime.BitSet FOLLOW_seqcall_in_ast93
FOLLOW_if__in_comp115
public static final org.antlr.runtime.BitSet FOLLOW_if__in_comp115
FOLLOW_in_in_comp125
public static final org.antlr.runtime.BitSet FOLLOW_in_in_comp125
FOLLOW_opt_in_comp135
public static final org.antlr.runtime.BitSet FOLLOW_opt_in_comp135
FOLLOW_par_in_comp145
public static final org.antlr.runtime.BitSet FOLLOW_par_in_comp145
FOLLOW_seq_in_comp155
public static final org.antlr.runtime.BitSet FOLLOW_seq_in_comp155
FOLLOW_warped_in_comp165
public static final org.antlr.runtime.BitSet FOLLOW_warped_in_comp165
FOLLOW_8_in_condition202
public static final org.antlr.runtime.BitSet FOLLOW_8_in_condition202
FOLLOW_IDENT_in_condition204
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_condition204
FOLLOW_predicate_in_condition206
public static final org.antlr.runtime.BitSet FOLLOW_predicate_in_condition206
FOLLOW_condition_in_condition211
public static final org.antlr.runtime.BitSet FOLLOW_condition_in_condition211
FOLLOW_9_in_condition217
public static final org.antlr.runtime.BitSet FOLLOW_9_in_condition217
FOLLOW_8_in_optcall257
public static final org.antlr.runtime.BitSet FOLLOW_8_in_optcall257
FOLLOW_IDENT_in_optcall259
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_optcall259
FOLLOW_selectors_in_optcall261
public static final org.antlr.runtime.BitSet FOLLOW_selectors_in_optcall261
FOLLOW_comp_in_optcall265
public static final org.antlr.runtime.BitSet FOLLOW_comp_in_optcall265
FOLLOW_9_in_optcall267
public static final org.antlr.runtime.BitSet FOLLOW_9_in_optcall267
FOLLOW_8_in_parcall307
public static final org.antlr.runtime.BitSet FOLLOW_8_in_parcall307
FOLLOW_IDENT_in_parcall309
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_parcall309
FOLLOW_tags_in_parcall311
public static final org.antlr.runtime.BitSet FOLLOW_tags_in_parcall311
FOLLOW_comp_in_parcall315
public static final org.antlr.runtime.BitSet FOLLOW_comp_in_parcall315
FOLLOW_9_in_parcall317
public static final org.antlr.runtime.BitSet FOLLOW_9_in_parcall317
FOLLOW_apply_in_seqcall347
public static final org.antlr.runtime.BitSet FOLLOW_apply_in_seqcall347
FOLLOW_part_in_seqcall357
public static final org.antlr.runtime.BitSet FOLLOW_part_in_seqcall357
FOLLOW_prim_in_seqcall368
public static final org.antlr.runtime.BitSet FOLLOW_prim_in_seqcall368
FOLLOW_8_in_apply406
public static final org.antlr.runtime.BitSet FOLLOW_8_in_apply406
FOLLOW_IDENT_in_apply408
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_apply408
FOLLOW_simple_words_in_apply412
public static final org.antlr.runtime.BitSet FOLLOW_simple_words_in_apply412
FOLLOW_apply_in_apply417
public static final org.antlr.runtime.BitSet FOLLOW_apply_in_apply417
FOLLOW_9_in_apply423
public static final org.antlr.runtime.BitSet FOLLOW_9_in_apply423
FOLLOW_8_in_part463
public static final org.antlr.runtime.BitSet FOLLOW_8_in_part463
FOLLOW_IDENT_in_part465
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_part465
FOLLOW_bool_in_part469
public static final org.antlr.runtime.BitSet FOLLOW_bool_in_part469
FOLLOW_comp_in_part473
public static final org.antlr.runtime.BitSet FOLLOW_comp_in_part473
FOLLOW_9_in_part475
public static final org.antlr.runtime.BitSet FOLLOW_9_in_part475
FOLLOW_8_in_prim520
public static final org.antlr.runtime.BitSet FOLLOW_8_in_prim520
FOLLOW_IDENT_in_prim522
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_prim522
FOLLOW_in_out_num_in_prim526
public static final org.antlr.runtime.BitSet FOLLOW_in_out_num_in_prim526
FOLLOW_10_in_prim528
public static final org.antlr.runtime.BitSet FOLLOW_10_in_prim528
FOLLOW_in_out_num_in_prim532
public static final org.antlr.runtime.BitSet FOLLOW_in_out_num_in_prim532
FOLLOW_10_in_prim534
public static final org.antlr.runtime.BitSet FOLLOW_10_in_prim534
FOLLOW_in_out_dir_in_prim538
public static final org.antlr.runtime.BitSet FOLLOW_in_out_dir_in_prim538
FOLLOW_10_in_prim540
public static final org.antlr.runtime.BitSet FOLLOW_10_in_prim540
FOLLOW_number_in_prim552
public static final org.antlr.runtime.BitSet FOLLOW_number_in_prim552
FOLLOW_10_in_prim563
public static final org.antlr.runtime.BitSet FOLLOW_10_in_prim563
FOLLOW_11_in_prim565
public static final org.antlr.runtime.BitSet FOLLOW_11_in_prim565
FOLLOW_10_in_prim580
public static final org.antlr.runtime.BitSet FOLLOW_10_in_prim580
FOLLOW_12_in_prim582
public static final org.antlr.runtime.BitSet FOLLOW_12_in_prim582
FOLLOW_9_in_prim588
public static final org.antlr.runtime.BitSet FOLLOW_9_in_prim588
FOLLOW_8_in_if_628
public static final org.antlr.runtime.BitSet FOLLOW_8_in_if_628
FOLLOW_IDENT_in_if_630
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_if_630
FOLLOW_condition_in_if_632
public static final org.antlr.runtime.BitSet FOLLOW_condition_in_if_632
FOLLOW_comp_in_if_636
public static final org.antlr.runtime.BitSet FOLLOW_comp_in_if_636
FOLLOW_9_in_if_638
public static final org.antlr.runtime.BitSet FOLLOW_9_in_if_638
FOLLOW_8_in_in678
public static final org.antlr.runtime.BitSet FOLLOW_8_in_in678
FOLLOW_IDENT_in_in680
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_in680
FOLLOW_number_in_in684
public static final org.antlr.runtime.BitSet FOLLOW_number_in_in684
FOLLOW_comp_in_in688
public static final org.antlr.runtime.BitSet FOLLOW_comp_in_in688
FOLLOW_9_in_in690
public static final org.antlr.runtime.BitSet FOLLOW_9_in_in690
FOLLOW_8_in_opt735
public static final org.antlr.runtime.BitSet FOLLOW_8_in_opt735
FOLLOW_IDENT_in_opt737
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_opt737
FOLLOW_optcall_in_opt740
public static final org.antlr.runtime.BitSet FOLLOW_optcall_in_opt740
FOLLOW_9_in_opt746
public static final org.antlr.runtime.BitSet FOLLOW_9_in_opt746
FOLLOW_8_in_par791
public static final org.antlr.runtime.BitSet FOLLOW_8_in_par791
FOLLOW_IDENT_in_par793
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_par793
FOLLOW_parcall_in_par796
public static final org.antlr.runtime.BitSet FOLLOW_parcall_in_par796
FOLLOW_9_in_par802
public static final org.antlr.runtime.BitSet FOLLOW_9_in_par802
FOLLOW_8_in_seq847
public static final org.antlr.runtime.BitSet FOLLOW_8_in_seq847
FOLLOW_IDENT_in_seq849
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_seq849
FOLLOW_seqcall_in_seq852
public static final org.antlr.runtime.BitSet FOLLOW_seqcall_in_seq852
FOLLOW_9_in_seq858
public static final org.antlr.runtime.BitSet FOLLOW_9_in_seq858
FOLLOW_8_in_warped898
public static final org.antlr.runtime.BitSet FOLLOW_8_in_warped898
FOLLOW_IDENT_in_warped900
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_warped900
FOLLOW_warp_in_warped902
public static final org.antlr.runtime.BitSet FOLLOW_warp_in_warped902
FOLLOW_comp_in_warped906
public static final org.antlr.runtime.BitSet FOLLOW_comp_in_warped906
FOLLOW_9_in_warped908
public static final org.antlr.runtime.BitSet FOLLOW_9_in_warped908
FOLLOW_list_elem_in_predicate939
public static final org.antlr.runtime.BitSet FOLLOW_list_elem_in_predicate939
FOLLOW_string_list_in_selectors969
public static final org.antlr.runtime.BitSet FOLLOW_string_list_in_selectors969
FOLLOW_string_list_in_tags999
public static final org.antlr.runtime.BitSet FOLLOW_string_list_in_tags999
FOLLOW_13_in_string_list1037
public static final org.antlr.runtime.BitSet FOLLOW_13_in_string_list1037
FOLLOW_list_elem_in_string_list1041
public static final org.antlr.runtime.BitSet FOLLOW_list_elem_in_string_list1041
FOLLOW_10_in_string_list1055
public static final org.antlr.runtime.BitSet FOLLOW_10_in_string_list1055
FOLLOW_list_elem_in_string_list1059
public static final org.antlr.runtime.BitSet FOLLOW_list_elem_in_string_list1059
FOLLOW_14_in_string_list1066
public static final org.antlr.runtime.BitSet FOLLOW_14_in_string_list1066
FOLLOW_simple_words_in_list_elem1088
public static final org.antlr.runtime.BitSet FOLLOW_simple_words_in_list_elem1088
FOLLOW_STRING_in_list_elem1098
public static final org.antlr.runtime.BitSet FOLLOW_STRING_in_list_elem1098
FOLLOW_opt_sign_in_number1124
public static final org.antlr.runtime.BitSet FOLLOW_opt_sign_in_number1124
FOLLOW_integer_in_number1126
public static final org.antlr.runtime.BitSet FOLLOW_integer_in_number1126
FOLLOW_fraction_in_number1128
public static final org.antlr.runtime.BitSet FOLLOW_fraction_in_number1128
FOLLOW_opt_sign_in_number1146
public static final org.antlr.runtime.BitSet FOLLOW_opt_sign_in_number1146
FOLLOW_integer_in_number1148
public static final org.antlr.runtime.BitSet FOLLOW_integer_in_number1148
FOLLOW_opt_sign_in_number1166
public static final org.antlr.runtime.BitSet FOLLOW_opt_sign_in_number1166
FOLLOW_fraction_in_number1168
public static final org.antlr.runtime.BitSet FOLLOW_fraction_in_number1168
FOLLOW_15_in_opt_sign1200
public static final org.antlr.runtime.BitSet FOLLOW_15_in_opt_sign1200
FOLLOW_16_in_opt_sign1210
public static final org.antlr.runtime.BitSet FOLLOW_16_in_opt_sign1210
FOLLOW_integer_in_fraction1246
public static final org.antlr.runtime.BitSet FOLLOW_integer_in_fraction1246
FOLLOW_17_in_fraction1248
public static final org.antlr.runtime.BitSet FOLLOW_17_in_fraction1248
FOLLOW_integer_in_fraction1252
public static final org.antlr.runtime.BitSet FOLLOW_integer_in_fraction1252
FOLLOW_INT_in_integer1284
public static final org.antlr.runtime.BitSet FOLLOW_INT_in_integer1284
FOLLOW_in_out_in_in_out_num1316
public static final org.antlr.runtime.BitSet FOLLOW_in_out_in_in_out_num1316
FOLLOW_number_in_in_out_num1319
public static final org.antlr.runtime.BitSet FOLLOW_number_in_in_out_num1319
FOLLOW_in_out_in_in_out_dir1350
public static final org.antlr.runtime.BitSet FOLLOW_in_out_in_in_out_dir1350
FOLLOW_rotation_in_in_out_dir1353
public static final org.antlr.runtime.BitSet FOLLOW_rotation_in_in_out_dir1353
FOLLOW_IDENT_in_rotation1391
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_rotation1391
FOLLOW_fraction_in_rotation1399
public static final org.antlr.runtime.BitSet FOLLOW_fraction_in_rotation1399
FOLLOW_IDENT_in_in_out1433
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_in_out1433
FOLLOW_IDENT_in_in_out1453
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_in_out1453
FOLLOW_IDENT_in_bool1487
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_bool1487
FOLLOW_IDENT_in_bool1507
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_bool1507
FOLLOW_IDENT_in_simple_word1531
public static final org.antlr.runtime.BitSet FOLLOW_IDENT_in_simple_word1531
FOLLOW_INT_in_simple_word1541
public static final org.antlr.runtime.BitSet FOLLOW_INT_in_simple_word1541
FOLLOW_simple_word_in_simple_words1572
public static final org.antlr.runtime.BitSet FOLLOW_simple_word_in_simple_words1572
FOLLOW_simple_word_in_simple_words1587
public static final org.antlr.runtime.BitSet FOLLOW_simple_word_in_simple_words1587
FOLLOW_18_in_warp1623
public static final org.antlr.runtime.BitSet FOLLOW_18_in_warp1623
AstParser
public AstParser(org.antlr.runtime.TokenStream input)
AstParser
public AstParser(org.antlr.runtime.TokenStream input,
org.antlr.runtime.RecognizerSharedState state)
AstParser
public AstParser(String s)
getTokenNames
public String[] getTokenNames()
- Overrides:
getTokenNames
in class org.antlr.runtime.BaseRecognizer
getGrammarFileName
public String getGrammarFileName()
- Overrides:
getGrammarFileName
in class org.antlr.runtime.BaseRecognizer
ast
public final AstNode ast()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
comp
public final Comp comp()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
condition
public final Condition condition()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
optcall
public final OptCall optcall()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
parcall
public final ParCall parcall()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
seqcall
public final SeqCall seqcall()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
apply
public final Apply apply()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
part
public final Part part()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
prim
public final Prim prim()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
if_
public final If if_()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
in
public final In in()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
opt
public final Opt opt()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
par
public final Par par()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
seq
public final Seq seq()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
warped
public final Warped warped()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
predicate
public final String predicate()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
selectors
public final List<Selector> selectors()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
tags
public final Set<TaggedFormation.Tag> tags()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
string_list
public final List<String> string_list()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
list_elem
public final String list_elem()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
number
public final Fraction number()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
opt_sign
public final boolean opt_sign()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
fraction
public final Fraction fraction()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
integer
public final Integer integer()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
in_out_num
public final AstParser.in_out_num_return in_out_num()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
in_out_dir
public final AstParser.in_out_dir_return in_out_dir()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
rotation
public final AstParser.rotation_return rotation()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
in_out
public final AstParser.in_out_return in_out()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
bool
public final Boolean bool()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
simple_word
public final String simple_word()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
simple_words
public final String simple_words()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
warp
public final Warp warp()
throws org.antlr.runtime.RecognitionException
- Throws:
org.antlr.runtime.RecognitionException
Copyright © 2006-2009 C. Scott Ananian