diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2020-04-30 16:40:51 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-30 16:40:51 +0200 |
commit | 4993a6504b4b447e0e02454094cffb02ee18c081 (patch) | |
tree | 16f694212b2ee0c3cacbd11f55f2e2ba8ea216f5 /cli/doc/interface.rs | |
parent | 81c75332fbf2635f5275cc85053dc244f211471d (diff) |
fix(doc): better repr for object literal types (#4998)
Diffstat (limited to 'cli/doc/interface.rs')
-rw-r--r-- | cli/doc/interface.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/cli/doc/interface.rs b/cli/doc/interface.rs index fb7a2c853..9e3c1fc90 100644 --- a/cli/doc/interface.rs +++ b/cli/doc/interface.rs @@ -57,7 +57,7 @@ pub struct InterfaceDef { pub type_params: Vec<TsTypeParamDef>, } -fn expr_to_name(expr: &swc_ecma_ast::Expr) -> String { +pub fn expr_to_name(expr: &swc_ecma_ast::Expr) -> String { use crate::swc_ecma_ast::Expr::*; use crate::swc_ecma_ast::ExprOrSuper::*; @@ -65,7 +65,7 @@ fn expr_to_name(expr: &swc_ecma_ast::Expr) -> String { Ident(ident) => ident.sym.to_string(), Member(member_expr) => { let left = match &member_expr.obj { - Super(_) => "TODO".to_string(), + Super(_) => "super".to_string(), Expr(boxed_expr) => expr_to_name(&*boxed_expr), }; let right = expr_to_name(&*member_expr.prop); @@ -126,10 +126,7 @@ pub fn get_doc_for_ts_interface_decl( } TsPropertySignature(ts_prop_sig) => { let prop_js_doc = doc_parser.js_doc_for_span(ts_prop_sig.span); - let name = match &*ts_prop_sig.key { - swc_ecma_ast::Expr::Ident(ident) => ident.sym.to_string(), - _ => "TODO".to_string(), - }; + let name = expr_to_name(&*ts_prop_sig.key); let mut params = vec![]; |