// Copyright (C) 2016 Michael Ficarra. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description : >
Ensure that the regular expression generally distinguishes between valid
and invalid forms of the NativeFunction grammar production .
includes : [ nativeFunctionMatcher . js ]
---*/
[
'function(){[native code]}' ,
'function(){ [native code] }' ,
'function ( ) { [ native code ] }' ,
'function a(){ [native code] }' ,
'function a(){ /* } */ [native code] }',
`function a() {
// test
[native code]
/* test */
}`,
'function(a, b = function() { []; }) { [native code] }' ,
'function [Symbol.xyz]() { [native code] }' ,
'function [x[y][z[d]()]]() { [native code] }' ,
'function ["]"] () { [native code] }' ,
'function [\' ]\'] () { [native code] }' ,
'/* test */ function() { [native code] }',
'function() { [native code] } /* test */',
'function() { [native code] } // test',
].forEach((s) => {
try {
validateNativeFunctionSource(s);
} catch (unused) {
throw new Error(`${JSON.stringify(s)} should pass`);
}
});
[
'native code' ,
'function() {}' ,
'function(){ "native code" }' ,
'function(){ [] native code }' ,
'function()) { [native code] }' ,
'function(() { [native code] }' ,
'function []] () { [native code] }' ,
'function [[] () { [native code] }' ,
'function ["]] () { [native code] }' ,
'function [\' ]] () { [native code] }',
'function() { [native code] /* }',
'// function() { [native code] }',
].forEach((s) => {
let fail = false ;
try {
validateNativeFunctionSource(s);
fail = true ;
} catch (unused) {}
if (fail) {
throw new Error(`${JSON.stringify(s)} should fail`);
}
});
reportCompare(0 , 0 );
Messung V0.5 in Prozent C=88 H=100 G=94
¤ Dauer der Verarbeitung: 0.15 Sekunden
(vorverarbeitet am 2026-09-28)
¤
*© Formatika GbR, Deutschland