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);