All files / lib/internal/main eval_string.js

100% Statements 32/32
100% Branches 3/3
100% Functions 0/0
100% Lines 32/32

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 468x 418x 418x 418x 418x 418x 418x  
'use strict';
 
// User passed `-e` or `--eval` arguments to Node without `-i` or
// `--interactive`.
 
const {
  globalThis,
} = primordials;
 
const {
  prepareMainThreadExecution
} = require('internal/bootstrap/pre_execution');
const { evalModule, evalScript } = require('internal/process/execution');
const { addBuiltinLibsToObject } = require('internal/modules/cjs/helpers');
 
const { getOptionValue } = require('internal/options');
 
prepareMainThreadExecution();
addBuiltinLibsToObject(globalThis, '<eval>');
markBootstrapComplete();
 
const source = getOptionValue('--eval');
const print = getOptionValue('--print');
const loadESM = getOptionValue('--import').length > 0;
if (getOptionValue('--input-type') === 'module')
  evalModule(source, print);
else
  evalScript('[eval]',
             source,
             getOptionValue('--inspect-brk'),
             print,
             loadESM);