1cdf0e10cSrcweir#!/usr/bin/env python
2*9f22d7c2SAndrew Rist# *************************************************************
3*9f22d7c2SAndrew Rist#
4*9f22d7c2SAndrew Rist#  Licensed to the Apache Software Foundation (ASF) under one
5*9f22d7c2SAndrew Rist#  or more contributor license agreements.  See the NOTICE file
6*9f22d7c2SAndrew Rist#  distributed with this work for additional information
7*9f22d7c2SAndrew Rist#  regarding copyright ownership.  The ASF licenses this file
8*9f22d7c2SAndrew Rist#  to you under the Apache License, Version 2.0 (the
9*9f22d7c2SAndrew Rist#  "License"); you may not use this file except in compliance
10*9f22d7c2SAndrew Rist#  with the License.  You may obtain a copy of the License at
11*9f22d7c2SAndrew Rist#
12*9f22d7c2SAndrew Rist#    http://www.apache.org/licenses/LICENSE-2.0
13*9f22d7c2SAndrew Rist#
14*9f22d7c2SAndrew Rist#  Unless required by applicable law or agreed to in writing,
15*9f22d7c2SAndrew Rist#  software distributed under the License is distributed on an
16*9f22d7c2SAndrew Rist#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17*9f22d7c2SAndrew Rist#  KIND, either express or implied.  See the License for the
18*9f22d7c2SAndrew Rist#  specific language governing permissions and limitations
19*9f22d7c2SAndrew Rist#  under the License.
20*9f22d7c2SAndrew Rist#
21*9f22d7c2SAndrew Rist# *************************************************************
22*9f22d7c2SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweirimport sys
25cdf0e10cSrcweirimport expression
26cdf0e10cSrcweir
27cdf0e10cSrcweirdef run (exp):
28cdf0e10cSrcweir    tokens = exp.split()
29cdf0e10cSrcweir    expparser = expression.ExpParser(tokens)
30cdf0e10cSrcweir    expparser.build()
31cdf0e10cSrcweir    expparser.dumpTree()
32cdf0e10cSrcweir
33cdf0e10cSrcweirdef main ():
34cdf0e10cSrcweir    run("6 + 34")
35cdf0e10cSrcweir    run("6 + 34 - 10")
36cdf0e10cSrcweir    run("6 + 34 - 10 + 200")
37cdf0e10cSrcweir    run("6 + 34 - 10 * 200")
38cdf0e10cSrcweir    run("6 + 34 - 10 * 200 + 18")
39cdf0e10cSrcweir    run("6 + 34 - 10 * 200 + 18 / 2")
40cdf0e10cSrcweir
41cdf0e10cSrcweir    run("6 * ( ( 10 + 2 ) - 10 ) * 33")
42cdf0e10cSrcweir
43cdf0e10cSrcweirif __name__ == '__main__':
44cdf0e10cSrcweir    main()
45