Function biome_js_parser::parse

source ·
pub fn parse(
    text: &str,
    source_type: JsFileSource,
    options: JsParserOptions
) -> Parse<AnyJsRoot>
Expand description

Parses the provided string as a EcmaScript program using the provided syntax features.

§Examples

use biome_js_parser::{JsParserOptions, parse};
use biome_js_syntax::{LanguageVariant, LanguageVersion, ModuleKind, JsFileSource};
// parse source text as TypeScript
let mut module = JsFileSource::ts();
let mut parsed = parse("type F = {}", module, JsParserOptions::default());
assert_eq!(parsed.diagnostics().len(), 0);
// parse source text as JSX
module = JsFileSource::jsx();
parsed = parse("<Component></Component>", module, JsParserOptions::default());
assert_eq!(parsed.diagnostics().len(), 0);
// parse source text with granular control
module = JsFileSource::default()
  .with_version(LanguageVersion::ESNext)
  .with_module_kind(ModuleKind::Module)
  .with_variant(LanguageVariant::Jsx);
parsed = parse("foo[bar]", module, JsParserOptions::default());
assert_eq!(parsed.diagnostics().len(), 0);