File tree 2 files changed +79
-0
lines changed
2 files changed +79
-0
lines changed Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+ # Generate $DEPTH layers of modules with $WIDTH modules on each layer
3
+ # Every module on layer N imports all the modules on layer N-1
4
+ # MultiLayerModules.hs imports all the modules from the last layer
5
+ DEPTH=15
6
+ WIDTH=40
7
+ cat > hie.yaml << EOF
8
+ cradle:
9
+ direct:
10
+ arguments:
11
+ EOF
12
+ for i in $( seq -w 1 $WIDTH ) ; do
13
+ echo " module DummyLevel0M$i where" > DummyLevel0M$i .hs;
14
+ echo " - DummyLevel0M$i .hs" >> hie.yaml;
15
+ done
16
+ for l in $( seq 1 $DEPTH ) ; do
17
+ for i in $( seq -w 1 $WIDTH ) ; do
18
+ echo " module DummyLevel${l} M$i where" > DummyLevel${l} M$i .hs;
19
+ echo " - DummyLevel${l} M$i .hs" >> hie.yaml;
20
+ for j in $( seq -w 1 $WIDTH ) ; do
21
+ echo " import DummyLevel$(( l- 1 )) M$j " >> DummyLevel${l} M$i .hs;
22
+ done
23
+ done
24
+ done
25
+ case " $1 " in
26
+ ' --th' )
27
+ echo " {-# LANGUAGE TemplateHaskell #-}" > MultiLayerModules.hs
28
+ ;;
29
+ esac
30
+ echo " module MultiLayerModules where" >> MultiLayerModules.hs
31
+ echo " - MultiLayerModules.hs" >> hie.yaml;
32
+ for j in $( seq -w 1 $WIDTH ) ; do
33
+ echo " import DummyLevel${DEPTH} M$j " >> MultiLayerModules.hs;
34
+ done
Original file line number Diff line number Diff line change @@ -33,6 +33,50 @@ examples:
33
33
modules :
34
34
- src/Language/LSP/Types/WatchedFiles.hs
35
35
- src/Language/LSP/Types/CallHierarchy.hs
36
+
37
+ - name : MultiLayerModules
38
+ path : bench/MultiLayerModules.sh
39
+ script : True
40
+ script-args : ["--th"]
41
+ modules :
42
+ - MultiLayerModules.hs
43
+ - DummyLevel0M01.hs
44
+ - DummyLevel1M01.hs
45
+ - name : MultiLayerModulesNoTH
46
+ path : bench/MultiLayerModules.sh
47
+ script : True
48
+ script-args : []
49
+ modules :
50
+ - MultiLayerModules.hs
51
+ - DummyLevel0M01.hs
52
+ - DummyLevel1M01.hs
53
+
54
+ - name : DummyLevel0M01
55
+ path : bench/MultiLayerModules.sh
56
+ script : True
57
+ script-args : ["--th"]
58
+ modules :
59
+ - DummyLevel0M01.hs
60
+ - name : DummyLevel0M01NoTH
61
+ path : bench/MultiLayerModules.sh
62
+ script : True
63
+ script-args : []
64
+ modules :
65
+ - DummyLevel0M01.hs
66
+
67
+ - name : DummyLevel1M01
68
+ path : bench/MultiLayerModules.sh
69
+ script : True
70
+ script-args : ["--th"]
71
+ modules :
72
+ - DummyLevel1M01.hs
73
+ - name : DummyLevel1M01NoTH
74
+ path : bench/MultiLayerModules.sh
75
+ script : True
76
+ script-args : []
77
+ modules :
78
+ - DummyLevel1M01.hs
79
+
36
80
# Small but heavily multi-component example
37
81
# Disabled as it is far to slow. hie-bios >0.7.2 should help
38
82
# - name: HLS
@@ -47,6 +91,7 @@ examples:
47
91
48
92
# The set of experiments to execute
49
93
experiments :
94
+ - " edit-header"
50
95
- " edit"
51
96
- " hover"
52
97
- " hover after edit"
You can’t perform that action at this time.
0 commit comments