All files / src/compiler/phases/3-transform/server/visitors ExpressionStatement.js

53.33% Statements 16/30
50% Branches 1/2
100% Functions 1/1
51.72% Lines 15/29

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 302x 2x 2x 2x 2x 2x 2x 2x 2x 14x 14x 14x                             14x 14x 14x  
/** @import { ExpressionStatement } from 'estree' */
/** @import { Context } from '../types.js' */
import * as b from '../../../../utils/builders.js';
 
/**
 * @param {ExpressionStatement} node
 * @param {Context} context
 */
export function ExpressionStatementRunes(node, context) {
	const expression = node.expression;
 
	if (expression.type === 'CallExpression') {
		const callee = expression.callee;

		if (callee.type === 'Identifier' && callee.name === '$effect') {
			return b.empty;
		}

		if (
			callee.type === 'MemberExpression' &&
			callee.object.type === 'Identifier' &&
			callee.object.name === '$effect'
		) {
			return b.empty;
		}
	}
 
	context.next();
}