summaryrefslogtreecommitdiff
path: root/tests/examplefiles/example.sml
diff options
context:
space:
mode:
authorRobert J. Simmons <robsimmons@gmail.com>2011-08-26 01:37:50 -0400
committerRobert J. Simmons <robsimmons@gmail.com>2011-08-26 01:37:50 -0400
commit492910d5bbd7040bf88110a752a17d5a426599a5 (patch)
treef84b52b629aadffdbe4d111bfb7bf68d8697f37f /tests/examplefiles/example.sml
parent9205a0279e28fd2a8257a0375293c6b7bb709ab2 (diff)
downloadpygments-492910d5bbd7040bf88110a752a17d5a426599a5.tar.gz
Add examples, more improvements to parser based on examining those examples
Diffstat (limited to 'tests/examplefiles/example.sml')
-rw-r--r--tests/examplefiles/example.sml57
1 files changed, 57 insertions, 0 deletions
diff --git a/tests/examplefiles/example.sml b/tests/examplefiles/example.sml
new file mode 100644
index 00000000..07ac6081
--- /dev/null
+++ b/tests/examplefiles/example.sml
@@ -0,0 +1,57 @@
+(*(*(*(*(* This file is all pretty strange Standard ML *)*)*)*) (**)*)
+(* Robert J. Simmons *)
+
+signature BA_Z = sig end
+
+structure **$*#$ = struct (* What (* A * strange * name *) for ) a ( struct *)
+
+structure Bar :> BA_Z = struct end
+structure !%&$#+-/:<=>?@\~`^|* :> BA_Z = struct end
+
+val$$$ = fn x => fn y => fn z => fn w => w
+val (foo, ++, bar, ||) = (4, 4, 5, 5)
+val _ = $$$foo++bar||
+
+val x : ' list = []
+val x : (' -> ') = fn x => x
+val x : ('a -> 'a) = fn x => x
+val x : (''a -> ''a) = fn x => x
+val x : ('''' -> '''') = fn x => x
+val x : unit = print "Weird, huh?\n"
+val w = {x=1,y=2,##= =3,4=3}
+val {##=, x, 4=a,...} = w
+val z = #4 w
+val z = # ##= w
+
+datatype ('0, 'b, '_, ') fo'o = Bar | baZ12' | dsfa_fad | #@$
+
+val _ = 123
+val _ = 0001
+val _ = ~123
+val _ = ~0001
+val _ = 0w12412
+val _ = 0w12412
+val _ = 0xfA0
+val _ = ~0xfA0
+val _ = 0wxfA0
+val _ = 1.4
+val _ = ~1.4
+val _ = 1e~2
+val _ = 1E~2
+val _ = 1e2
+val _ = 1E2
+val _ = 1.4e~2
+val _ = 1.4E~2
+val _ = 1.4e2
+val _ = 1.4E2
+
+val st = "foo \
+ \ bar" ^ "baz \
+ \ and \
+ \ such\n"
+
+val () = print st
+
+val _ = foo::bar::4::[++]
+
+end