File modules/editor/codemirror/mode/verilog/test.min.js

Last commit: Tue May 22 22:39:54 2018 +0200	Jan Dankert	Fix für PHP 7.2: 'Object' darf nun nicht mehr als Klassennamen verwendet werden. AUCH NICHT IN EINEM NAMESPACE! WTF, wozu habe ich das in einen verfickten Namespace gepackt? Wozu soll der sonst da sein??? Amateure. Daher nun notgedrungen unbenannt in 'BaseObject'.
1 // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 // Distributed under an MIT license: http://codemirror.net/LICENSE 3 4 (function() { 5 var mode = CodeMirror.getMode({indentUnit: 4}, "verilog"); 6 function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); } 7 8 MT("binary_literals", 9 "[number 1'b0]", 10 "[number 1'b1]", 11 "[number 1'bx]", 12 "[number 1'bz]", 13 "[number 1'bX]", 14 "[number 1'bZ]", 15 "[number 1'B0]", 16 "[number 1'B1]", 17 "[number 1'Bx]", 18 "[number 1'Bz]", 19 "[number 1'BX]", 20 "[number 1'BZ]", 21 "[number 1'b0]", 22 "[number 1'b1]", 23 "[number 2'b01]", 24 "[number 2'bxz]", 25 "[number 2'b11]", 26 "[number 2'b10]", 27 "[number 2'b1Z]", 28 "[number 12'b0101_0101_0101]", 29 "[number 1'b 0]", 30 "[number 'b0101]" 31 ); 32 33 MT("octal_literals", 34 "[number 3'o7]", 35 "[number 3'O7]", 36 "[number 3'so7]", 37 "[number 3'SO7]" 38 ); 39 40 MT("decimal_literals", 41 "[number 0]", 42 "[number 1]", 43 "[number 7]", 44 "[number 123_456]", 45 "[number 'd33]", 46 "[number 8'd255]", 47 "[number 8'D255]", 48 "[number 8'sd255]", 49 "[number 8'SD255]", 50 "[number 32'd123]", 51 "[number 32 'd123]", 52 "[number 32 'd 123]" 53 ); 54 55 MT("hex_literals", 56 "[number 4'h0]", 57 "[number 4'ha]", 58 "[number 4'hF]", 59 "[number 4'hx]", 60 "[number 4'hz]", 61 "[number 4'hX]", 62 "[number 4'hZ]", 63 "[number 32'hdc78]", 64 "[number 32'hDC78]", 65 "[number 32 'hDC78]", 66 "[number 32'h DC78]", 67 "[number 32 'h DC78]", 68 "[number 32'h44x7]", 69 "[number 32'hFFF?]" 70 ); 71 72 MT("real_number_literals", 73 "[number 1.2]", 74 "[number 0.1]", 75 "[number 2394.26331]", 76 "[number 1.2E12]", 77 "[number 1.2e12]", 78 "[number 1.30e-2]", 79 "[number 0.1e-0]", 80 "[number 23E10]", 81 "[number 29E-2]", 82 "[number 236.123_763_e-12]" 83 ); 84 85 MT("operators", 86 "[meta ^]" 87 ); 88 89 MT("keywords", 90 "[keyword logic]", 91 "[keyword logic] [variable foo]", 92 "[keyword reg] [variable abc]" 93 ); 94 95 MT("variables", 96 "[variable _leading_underscore]", 97 "[variable _if]", 98 "[number 12] [variable foo]", 99 "[variable foo] [number 14]" 100 ); 101 102 MT("tick_defines", 103 "[def `FOO]", 104 "[def `foo]", 105 "[def `FOO_bar]" 106 ); 107 108 MT("system_calls", 109 "[meta $display]", 110 "[meta $vpi_printf]" 111 ); 112 113 MT("line_comment", "[comment // Hello world]"); 114 115 // Alignment tests 116 MT("align_port_map_style1", 117 /** 118 * mod mod(.a(a), 119 * .b(b) 120 * ); 121 */ 122 "[variable mod] [variable mod][bracket (].[variable a][bracket (][variable a][bracket )],", 123 " .[variable b][bracket (][variable b][bracket )]", 124 " [bracket )];", 125 "" 126 ); 127 128 MT("align_port_map_style2", 129 /** 130 * mod mod( 131 * .a(a), 132 * .b(b) 133 * ); 134 */ 135 "[variable mod] [variable mod][bracket (]", 136 " .[variable a][bracket (][variable a][bracket )],", 137 " .[variable b][bracket (][variable b][bracket )]", 138 "[bracket )];", 139 "" 140 ); 141 142 // Indentation tests 143 MT("indent_single_statement_if", 144 "[keyword if] [bracket (][variable foo][bracket )]", 145 " [keyword break];", 146 "" 147 ); 148 149 MT("no_indent_after_single_line_if", 150 "[keyword if] [bracket (][variable foo][bracket )] [keyword break];", 151 "" 152 ); 153 154 MT("indent_after_if_begin_same_line", 155 "[keyword if] [bracket (][variable foo][bracket )] [keyword begin]", 156 " [keyword break];", 157 " [keyword break];", 158 "[keyword end]", 159 "" 160 ); 161 162 MT("indent_after_if_begin_next_line", 163 "[keyword if] [bracket (][variable foo][bracket )]", 164 " [keyword begin]", 165 " [keyword break];", 166 " [keyword break];", 167 " [keyword end]", 168 "" 169 ); 170 171 MT("indent_single_statement_if_else", 172 "[keyword if] [bracket (][variable foo][bracket )]", 173 " [keyword break];", 174 "[keyword else]", 175 " [keyword break];", 176 "" 177 ); 178 179 MT("indent_if_else_begin_same_line", 180 "[keyword if] [bracket (][variable foo][bracket )] [keyword begin]", 181 " [keyword break];", 182 " [keyword break];", 183 "[keyword end] [keyword else] [keyword begin]", 184 " [keyword break];", 185 " [keyword break];", 186 "[keyword end]", 187 "" 188 ); 189 190 MT("indent_if_else_begin_next_line", 191 "[keyword if] [bracket (][variable foo][bracket )]", 192 " [keyword begin]", 193 " [keyword break];", 194 " [keyword break];", 195 " [keyword end]", 196 "[keyword else]", 197 " [keyword begin]", 198 " [keyword break];", 199 " [keyword break];", 200 " [keyword end]", 201 "" 202 ); 203 204 MT("indent_if_nested_without_begin", 205 "[keyword if] [bracket (][variable foo][bracket )]", 206 " [keyword if] [bracket (][variable foo][bracket )]", 207 " [keyword if] [bracket (][variable foo][bracket )]", 208 " [keyword break];", 209 "" 210 ); 211 212 MT("indent_case", 213 "[keyword case] [bracket (][variable state][bracket )]", 214 " [variable FOO]:", 215 " [keyword break];", 216 " [variable BAR]:", 217 " [keyword break];", 218 "[keyword endcase]", 219 "" 220 ); 221 222 MT("unindent_after_end_with_preceding_text", 223 "[keyword begin]", 224 " [keyword break]; [keyword end]", 225 "" 226 ); 227 228 MT("export_function_one_line_does_not_indent", 229 "[keyword export] [string \"DPI-C\"] [keyword function] [variable helloFromSV];", 230 "" 231 ); 232 233 MT("export_task_one_line_does_not_indent", 234 "[keyword export] [string \"DPI-C\"] [keyword task] [variable helloFromSV];", 235 "" 236 ); 237 238 MT("export_function_two_lines_indents_properly", 239 "[keyword export]", 240 " [string \"DPI-C\"] [keyword function] [variable helloFromSV];", 241 "" 242 ); 243 244 MT("export_task_two_lines_indents_properly", 245 "[keyword export]", 246 " [string \"DPI-C\"] [keyword task] [variable helloFromSV];", 247 "" 248 ); 249 250 MT("import_function_one_line_does_not_indent", 251 "[keyword import] [string \"DPI-C\"] [keyword function] [variable helloFromC];", 252 "" 253 ); 254 255 MT("import_task_one_line_does_not_indent", 256 "[keyword import] [string \"DPI-C\"] [keyword task] [variable helloFromC];", 257 "" 258 ); 259 260 MT("import_package_single_line_does_not_indent", 261 "[keyword import] [variable p]::[variable x];", 262 "[keyword import] [variable p]::[variable y];", 263 "" 264 ); 265 266 MT("covergroup_with_function_indents_properly", 267 "[keyword covergroup] [variable cg] [keyword with] [keyword function] [variable sample][bracket (][keyword bit] [variable b][bracket )];", 268 " [variable c] : [keyword coverpoint] [variable c];", 269 "[keyword endgroup]: [variable cg]", 270 "" 271 ); 272 273 })();
Download modules/editor/codemirror/mode/verilog/test.min.js
History Tue, 22 May 2018 22:39:54 +0200 Jan Dankert Fix für PHP 7.2: 'Object' darf nun nicht mehr als Klassennamen verwendet werden. AUCH NICHT IN EINEM NAMESPACE! WTF, wozu habe ich das in einen verfickten Namespace gepackt? Wozu soll der sonst da sein??? Amateure. Daher nun notgedrungen unbenannt in 'BaseObject'.