diff options
| author | Camille Mougey <camille.mougey@cea.fr> | 2014-12-10 17:28:33 +0100 |
|---|---|---|
| committer | Camille Mougey <camille.mougey@cea.fr> | 2014-12-10 17:28:33 +0100 |
| commit | 03759804c045e68602df5ada8db12ff74d1bf784 (patch) | |
| tree | 48170970b2c0fd5bfa982ecbae837723b195492b /example/expression/expr_random.py | |
| parent | 40f926bf7bc78a62a63960276907b200088b91df (diff) | |
| download | focaccia-miasm-03759804c045e68602df5ada8db12ff74d1bf784.tar.gz focaccia-miasm-03759804c045e68602df5ada8db12ff74d1bf784.zip | |
Example: Add an example for ExprRandom
Diffstat (limited to 'example/expression/expr_random.py')
| -rw-r--r-- | example/expression/expr_random.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/example/expression/expr_random.py b/example/expression/expr_random.py new file mode 100644 index 00000000..1d399091 --- /dev/null +++ b/example/expression/expr_random.py @@ -0,0 +1,30 @@ +import string + +from miasm2.expression.expression_helper import ExprRandom + +print "Simple expression generator\n" + +depth = 8 +print "- An ID:" +print ExprRandom.identifier() +print "- A number:" +print ExprRandom.number() + +print "- 3 expressions (without cleaning expression cache):" +for i in xrange(3): + print "\t%s\n" % ExprRandom.get(depth=depth, clean=False) + +class ExprRandom_NoPerfect_NoReuse_UppercaseIdent(ExprRandom): + """ExprRandom extension with: + - perfect tree disabled + - element reuse disabled + - identifiers uppercased + """ + + perfect_tree = False + reuse_element = False + identifier_charset = string.uppercase + +print "- 3 expressions with a custom generator:" +for i in xrange(3): + print "\t%s\n" % ExprRandom_NoPerfect_NoReuse_UppercaseIdent.get(depth=depth) |