MCPcopy
hub / github.com/jquery/esprima / parseJSXElementName

Method parseJSXElementName

src/jsx-parser.ts:362–381  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

360 }
361
362 parseJSXElementName(): JSXNode.JSXElementName {
363 const node = this.createJSXNode();
364 let elementName = this.parseJSXIdentifier();
365
366 if (this.matchJSX(':')) {
367 const namespace = elementName;
368 this.expectJSX(':');
369 const name = this.parseJSXIdentifier();
370 elementName = this.finalize(node, new JSXNode.JSXNamespacedName(namespace, name));
371 } else if (this.matchJSX('.')) {
372 while (this.matchJSX('.')) {
373 const object = elementName;
374 this.expectJSX('.');
375 const property = this.parseJSXIdentifier();
376 elementName = this.finalize(node, new JSXNode.JSXMemberExpression(object, property));
377 }
378 }
379
380 return elementName;
381 }
382
383 parseJSXAttributeName(): JSXNode.JSXAttributeName {
384 const node = this.createJSXNode();

Callers 2

Calls 5

createJSXNodeMethod · 0.95
parseJSXIdentifierMethod · 0.95
matchJSXMethod · 0.95
expectJSXMethod · 0.95
finalizeMethod · 0.80

Tested by

no test coverage detected