Module Flow_ast.JSX

module Identifier: { ... };
module NamespacedName: { ... };
module ExpressionContainer: { ... };
module Text: { ... };
module Attribute: { ... };
module SpreadAttribute: { ... };
module MemberExpression: { ... };
type name('M, 'T) =
  1. | Identifier(Identifier.t('M, 'T))
  2. | NamespacedName(NamespacedName.t('M, 'T))
  3. | MemberExpression(MemberExpression.t('M, 'T))
;
let pp_name: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => name('M, 'T) => unit;
let show_name: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => name('M, 'T) => string;
module Opening: { ... };
module Closing: { ... };
module SpreadChild: { ... };
type child('M, 'T) = ('T, child'('M, 'T));
and child'('M, 'T) =
  1. | Element(element('M, 'T))
  2. | Fragment(fragment('M, 'T))
  3. | ExpressionContainer(ExpressionContainer.t('M, 'T))
  4. | SpreadChild(SpreadChild.t('M, 'T))
  5. | Text(Text.t)
;
and element('M, 'T) = {
  1. opening_element: Opening.t('M, 'T),
  2. closing_element: option(Closing.t('M, 'T)),
  3. children: ('M, list(child('M, 'T))),
  4. comments: option(Syntax.t('M, unit)),
};
and fragment('M, 'T) = {
  1. frag_opening_element: 'M,
  2. frag_closing_element: 'M,
  3. frag_children: ('M, list(child('M, 'T))),
  4. frag_comments: option(Syntax.t('M, unit)),
};
let pp_child: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => child('M, 'T) => unit;
let show_child: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => child('M, 'T) => string;
let pp_child': (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => child'('M, 'T) => unit;
let show_child': (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => child'('M, 'T) => string;
let pp_element: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => element('M, 'T) => unit;
let show_element: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => element('M, 'T) => string;
let pp_fragment: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => fragment('M, 'T) => unit;
let show_fragment: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => fragment('M, 'T) => string;