throws SoySyntaxException {
// Generate code with the opt_ijData param if either (a) the user specified the compiler flag
// --isUsingIjData or (b) any of the Soy code in the file set references injected data.
boolean isUsingIjData =
jsSrcOptions.isUsingIjData() || (new IsUsingIjDataVisitor()).exec(soyTree);
// Make sure that we don't try to use goog.i18n.bidi when we aren't supposed to use Closure.
Preconditions.checkState(
!jsSrcOptions.getUseGoogIsRtlForBidiGlobalDir() ||
jsSrcOptions.shouldProvideRequireSoyNamespaces() ||