Linux id-dci-web1412.main-hosting.eu 5.14.0-611.20.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jan 14 06:35:04 EST 2026 x86_64
LiteSpeed
: 2a02:4780:6:1512:0:19fc:adf1:2 | : 216.73.216.85
Cant Read [ /etc/named.conf ]
8.1.34
u435990001
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
opt /
gsutil /
third_party /
pyparsing /
examples /
[ HOME SHELL ]
Name
Size
Permission
Action
statemachine
[ DIR ]
drwxr-xr-x
AcManForm.dfm
38.22
KB
-rw-r--r--
LAparser.py
20.62
KB
-rw-r--r--
README.md
5.13
KB
-rw-r--r--
Setup.ini
1.41
KB
-rw-r--r--
SimpleCalc.py
3.58
KB
-rw-r--r--
SingleForm.dfm
42.7
KB
-rw-r--r--
TAP.py
7.6
KB
-rw-r--r--
TAP_diagram.html
28.6
KB
-rw-r--r--
__init__.py
0
B
-rw-r--r--
adventureEngine.py
21.91
KB
-rw-r--r--
adventure_game_parser_diagram....
38.37
KB
-rw-r--r--
antlr_grammar.py
11.07
KB
-rw-r--r--
antlr_grammar_diagram.html
269.88
KB
-rw-r--r--
antlr_grammar_tests.py
2.89
KB
-rw-r--r--
apicheck.py
2.49
KB
-rw-r--r--
apicheck_diagram.html
12.56
KB
-rw-r--r--
bf.py
4.27
KB
-rw-r--r--
bf_diagram.html
6.74
KB
-rw-r--r--
bigquery_view_parser.py
62.51
KB
-rw-r--r--
booleansearchparser.py
15.26
KB
-rw-r--r--
btpyparse.py
4.16
KB
-rw-r--r--
builtin_parse_action_demo.py
817
B
-rw-r--r--
cLibHeader.py
853
B
-rw-r--r--
chemical_formulas.html
5.28
KB
-rw-r--r--
chemical_formulas.py
3.33
KB
-rw-r--r--
commasep.py
707
B
-rw-r--r--
complex_chemical_formulas.py
5.26
KB
-rw-r--r--
complex_chemical_formulas_diag...
22.88
KB
-rw-r--r--
configParse.py
2
KB
-rw-r--r--
cpp_enum_parser.py
1.35
KB
-rw-r--r--
cuneiform_python.py
2.57
KB
-rw-r--r--
datetime_parse_actions.py
1.9
KB
-rw-r--r--
decaf_parser.py
7.34
KB
-rw-r--r--
decaf_parser_diagram.html
233.34
KB
-rw-r--r--
delta_time.py
21.57
KB
-rw-r--r--
delta_time_diagram.html
106.3
KB
-rw-r--r--
dfmparse.py
7.05
KB
-rw-r--r--
dhcpd_leases_parser.py
2.98
KB
-rw-r--r--
dictExample.py
1.73
KB
-rw-r--r--
dictExample2.py
2.1
KB
-rw-r--r--
directx_x_file_parser.html
35.78
KB
-rw-r--r--
directx_x_file_parser.py
5.67
KB
-rw-r--r--
ebnf.py
4.49
KB
-rw-r--r--
ebnf_diagram.html
30.49
KB
-rw-r--r--
ebnf_number_parser_diagram.htm...
29.87
KB
-rw-r--r--
ebnf_number_words.py
2.06
KB
-rw-r--r--
ebnftest.py
2.01
KB
-rw-r--r--
email_address_parser.py
1.18
KB
-rw-r--r--
eval_arith.py
6.15
KB
-rw-r--r--
excel_expr.py
2.2
KB
-rw-r--r--
fourFn.py
10.27
KB
-rw-r--r--
gen_ctypes.py
5.28
KB
-rw-r--r--
getNTPserversNew.py
1.11
KB
-rw-r--r--
greeting.py
518
B
-rw-r--r--
greetingInGreek.py
425
B
-rw-r--r--
greetingInKorean.py
495
B
-rw-r--r--
groupUsingListAllMatches.py
509
B
-rw-r--r--
hola_mundo.py
2.02
KB
-rw-r--r--
html_stripper.py
1.68
KB
-rw-r--r--
html_table_parser.py
2.16
KB
-rw-r--r--
httpServerLogParser.py
3.48
KB
-rw-r--r--
idlParse.py
7.53
KB
-rw-r--r--
include_preprocessor.py
2.63
KB
-rw-r--r--
indentedGrammarExample.py
1022
B
-rw-r--r--
indented_block_example.py
712
B
-rw-r--r--
infix_math_parser.py
6.33
KB
-rw-r--r--
inv_regex.py
8.08
KB
-rw-r--r--
javascript_grammar.g
18.1
KB
-rw-r--r--
jsonParser.py
4.7
KB
-rw-r--r--
left_recursion.py
1.41
KB
-rw-r--r--
lineno_example.py
1.49
KB
-rw-r--r--
listAllMatches.py
1.57
KB
-rw-r--r--
lox_parser.py
6.17
KB
-rw-r--r--
lox_parser_diagram.html
136.52
KB
-rw-r--r--
lua_parser.py
8.14
KB
-rw-r--r--
lua_parser_diagram.html
221.2
KB
-rw-r--r--
lucene_grammar.py
8.81
KB
-rw-r--r--
lucene_grammar_diagram.html
46.24
KB
-rw-r--r--
macro_expander.py
1.77
KB
-rw-r--r--
make_diagram.py
1.62
KB
-rw-r--r--
matchPreviousDemo.py
586
B
-rw-r--r--
mongodb_query_expression.html
107.18
KB
-rw-r--r--
mongodb_query_expression.py
19.77
KB
-rw-r--r--
mongodb_query_expression_step_...
7.6
KB
-rw-r--r--
mozilla.ics
752
B
-rw-r--r--
mozillaCalendarParser.py
2.71
KB
-rw-r--r--
nested.py
579
B
-rw-r--r--
nested_markup.py
1.85
KB
-rw-r--r--
number_words.py
4.01
KB
-rw-r--r--
number_words_diagram.html
38.28
KB
-rw-r--r--
numerics.py
1.34
KB
-rw-r--r--
oc.py
4.34
KB
-rw-r--r--
one_to_ninety_nine.py
1.88
KB
-rw-r--r--
parseTabularData.py
1.68
KB
-rw-r--r--
parse_python_value.html
49.46
KB
-rw-r--r--
parse_python_value.py
4.09
KB
-rw-r--r--
parse_results_sum_example.py
853
B
-rw-r--r--
partial_gene_match.py
2.33
KB
-rw-r--r--
pgn.py
3.34
KB
-rw-r--r--
position.py
2.17
KB
-rw-r--r--
protobuf_parser.py
3.89
KB
-rw-r--r--
pythonGrammarParser.py
8.08
KB
-rw-r--r--
railroad_diagram_demo.py
1.55
KB
-rw-r--r--
range_check.py
2.9
KB
-rw-r--r--
readJson.py
120.73
KB
-rw-r--r--
removeLineBreaks.py
1.8
KB
-rw-r--r--
roman_numerals.py
3.64
KB
-rw-r--r--
roman_numerals_diagram.html
29.71
KB
-rw-r--r--
rosettacode.py
7.73
KB
-rw-r--r--
rosettacode_diagram.html
90.46
KB
-rw-r--r--
scanExamples.py
2.36
KB
-rw-r--r--
searchParserAppDemo.py
962
B
-rw-r--r--
searchparser.py
10.4
KB
-rw-r--r--
select_parser.py
8.72
KB
-rw-r--r--
sexpParser.py
5.23
KB
-rw-r--r--
shapes.py
1.69
KB
-rw-r--r--
simpleArith.py
2.42
KB
-rw-r--r--
simpleBool.py
3.19
KB
-rw-r--r--
simpleSQL.py
3.16
KB
-rw-r--r--
simpleWiki.py
1.08
KB
-rw-r--r--
snmp_api.h
28.69
KB
-rw-r--r--
sql2dot.py
3.07
KB
-rw-r--r--
stackish.py
2.71
KB
-rw-r--r--
tag_emitter.py
968
B
-rw-r--r--
tag_metadata.py
1012
B
-rw-r--r--
tag_metadata_diagram.html
5.7
KB
-rw-r--r--
test_bibparse.py
8.72
KB
-rw-r--r--
unicode_denormalizer.py
5.02
KB
-rw-r--r--
urlExtractor.py
1.03
KB
-rw-r--r--
urlExtractorNew.py
2.4
KB
-rw-r--r--
verilog_parse.py
31.16
KB
-rw-r--r--
withAttribute.py
912
B
-rw-r--r--
wordsToNum.py
2.99
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : decaf_parser.py
# # decaf_parser.py # # Rudimentary parser for decaf language, used in Stanford University CS143 # (https://web.stanford.edu/class/archive/cs/cs143/cs143.1128/handouts/030%20Decaf%20Specification.pdf) # # To convert this parser into one that gives more of an AST, change all the Group wrappers to add parse # actions that will result in ASTNode classes, or statement-specific subclasses. # # Copyright 2018, Paul McGuire # # fmt: off """ Program ::= Decl+ Decl ::= VariableDecl | FunctionDecl | ClassDecl | InterfaceDecl VariableDecl ::= Variable ; Variable ::= Type ident Type ::= int | double | bool | string | ident | Type [] FunctionDecl ::= Type ident ( Formals ) StmtBlock | void ident ( Formals ) StmtBlock Formals ::= Variable+, | e ClassDecl ::= class ident <extends ident> <implements ident + ,> { Field* } Field ::= VariableDecl | FunctionDecl InterfaceDecl ::= interface ident { Prototype* } Prototype ::= Type ident ( Formals ) ; | void ident ( Formals ) ; StmtBlock ::= { VariableDecl* Stmt* } Stmt ::= <Expr> ; | IfStmt | WhileStmt | ForStmt | BreakStmt | ReturnStmt | PrintStmt | StmtBlock IfStmt ::= if ( Expr ) Stmt <else Stmt> WhileStmt ::= while ( Expr ) Stmt ForStmt ::= for ( <Expr> ; Expr ; <Expr> ) Stmt ReturnStmt ::= return <Expr> ; BreakStmt ::= break ; PrintStmt ::= Print ( Expr+, ) ; Expr ::= LValue = Expr | Constant | LValue | this | Call | ( Expr ) | Expr + Expr | Expr - Expr | Expr * Expr | Expr / Expr | Expr % Expr | - Expr | Expr < Expr | Expr <= Expr | Expr > Expr | Expr >= Expr | Expr == Expr | Expr != Expr | Expr && Expr | Expr || Expr | ! Expr | ReadInteger ( ) | ReadLine ( ) | new ident | NewArray ( Expr , Typev) LValue ::= ident | Expr . ident | Expr [ Expr ] Call ::= ident ( Actuals ) | Expr . ident ( Actuals ) Actuals ::= Expr+, | e Constant ::= intConstant | doubleConstant | boolConstant | stringConstant | null """ import pyparsing as pp from pyparsing import pyparsing_common as ppc pp.ParserElement.enable_packrat() # keywords keywords_ = ( VOID, INT, DOUBLE, BOOL, STRING, CLASS, INTERFACE, NULL, THIS, EXTENDS, IMPLEMENTS, FOR, WHILE, IF, ELSE, RETURN, BREAK, NEW, NEWARRAY, PRINT, READINTEGER, READLINE, TRUE, FALSE, ) = list( pp.Keyword.using_each( """ void int double bool string class interface null this extends implements or while if else return break new NewArray Print ReadInteger ReadLine true false """.split(), ) ) keywords = pp.MatchFirst(keywords_).set_name("any_keyword") ( LPAR, RPAR, LBRACE, RBRACE, LBRACK, RBRACK, DOT, EQ, COMMA, SEMI ) = pp.Suppress.using_each("(){}[].=,;") hex_constant = pp.Regex(r"0[xX][0-9a-fA-F]+").add_parse_action( lambda t: int(t[0][2:], 16) ) int_constant = hex_constant | ppc.integer double_constant = ppc.real bool_constant = TRUE | FALSE string_constant = pp.dbl_quoted_string null = NULL constant = double_constant | bool_constant | int_constant | string_constant | null ident = ~keywords + ppc.identifier type_ = pp.Group((INT | DOUBLE | BOOL | STRING | ident) + pp.Literal("[]")[...]) variable = type_ + ident variable_decl = variable + SEMI expr = pp.Forward() expr_parens = pp.Group(LPAR + expr + RPAR) actuals = pp.DelimitedList(expr) | "" call = pp.Group( ident("call_ident") + LPAR + actuals("call_args") + RPAR | (expr_parens + (DOT + ident)[...])("call_ident_expr") + LPAR + actuals("call_args") + RPAR ) lvalue = ( (ident | expr_parens) + (DOT + (ident | expr_parens))[...] + (LBRACK + expr + RBRACK)[...] ) assignment = pp.Group(lvalue("lhs") + EQ + expr("rhs")) read_integer = pp.Group(READINTEGER + LPAR + RPAR) read_line = pp.Group(READLINE + LPAR + RPAR) new_statement = pp.Group(NEW + ident) new_array = pp.Group(NEWARRAY + LPAR + expr + COMMA + type_ + RPAR) rvalue = constant | call | read_integer | read_line | new_statement | new_array | ident arith_expr = pp.infix_notation( rvalue.set_name("rvalue"), [ ("-", 1, pp.OpAssoc.RIGHT,), (pp.one_of("* / %"), 2, pp.OpAssoc.LEFT,), (pp.one_of("+ -"), 2, pp.OpAssoc.LEFT,), ], ) comparison_expr = pp.infix_notation( arith_expr.set_name("arith_expr"), [ ("!", 1, pp.OpAssoc.RIGHT,), (pp.one_of("< > <= >="), 2, pp.OpAssoc.LEFT,), (pp.one_of("== !="), 2, pp.OpAssoc.LEFT,), (pp.one_of("&&"), 2, pp.OpAssoc.LEFT,), (pp.one_of("||"), 2, pp.OpAssoc.LEFT,), ], ) expr <<= ( assignment | call | THIS | comparison_expr | arith_expr | lvalue | constant | read_integer | read_line | new_statement | new_array ) stmt = pp.Forward() print_stmt = pp.Group( PRINT("statement") + LPAR + pp.Group(pp.DelimitedList(expr) | "")("args") + RPAR + SEMI ) break_stmt = pp.Group(BREAK("statement") + SEMI) return_stmt = pp.Group(RETURN("statement") + expr + SEMI) for_stmt = pp.Group( FOR("statement") + LPAR + (expr | "") + SEMI + expr + SEMI + (expr | "") + RPAR + stmt ) while_stmt = pp.Group(WHILE("statement") + LPAR + expr + RPAR + stmt) if_stmt = pp.Group( IF("statement") + LPAR + pp.Group(expr)("condition") + RPAR + pp.Group(stmt)("then_statement") + pp.Group((ELSE + stmt | ""))("else_statement") ) stmt_block = pp.Group( LBRACE + variable_decl[...] + stmt[...] + RBRACE ) stmt <<= ( if_stmt | while_stmt | for_stmt | break_stmt | return_stmt | print_stmt | stmt_block | pp.Group(expr + SEMI) ) formals = pp.DelimitedList(variable) | "" prototype = pp.Group( (type_ | VOID)("return_type") + ident("function_name") + LPAR + formals("args") + RPAR + SEMI )("prototype") function_decl = pp.Group( (type_ | VOID)("return_type") + ident("function_name") + LPAR + formals("args") + RPAR + stmt_block("body") )("function_decl") interface_decl = pp.Group( INTERFACE + ident("interface_name") + LBRACE + prototype[...]("prototypes") + RBRACE )("interface") field = variable_decl | function_decl class_decl = pp.Group( CLASS + ident("class_name") + (EXTENDS + ident | "")("extends") + (IMPLEMENTS + pp.DelimitedList(ident) | "")("implements") + LBRACE + field[...]("fields") + RBRACE )("class_decl") decl = variable_decl | function_decl | class_decl | interface_decl | prototype program = pp.Group(decl)[1, ...] decaf_parser = program pp.autoname_elements() if __name__ == '__main__': import contextlib # create railroad diagram for this parser with contextlib.suppress(Exception): program.create_diagram( "decaf_parser_diagram.html", vertical=2, show_groups=True ) stmt.runTests("""\ sin(30); a = 1; b = 1 + 1; b = 1 != 2 && false; print("A"); a.b = 100; a.b = 100.0; a[100] = b; a[0][0] = 2; a = 0x1234; """ ) test_program = """ void getenv(string var); int main(string[] args) { if (a > 100) { Print(a, " is too big"); } else if (a < 100) { Print(a, " is too small"); } else { Print(a, "just right!"); } } """ print(decaf_parser.parse_string(test_program).dump())
Close