pub trait JsExprVisitor<R> {
Show 20 methods
// Required methods
fn visit_identifier(
&mut self,
id: &String,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_literal(
&mut self,
value: &NargoValue,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_unary(
&mut self,
op: &String,
argument: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_binary(
&mut self,
left: &JsExpr,
op: &String,
right: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_call(
&mut self,
callee: &JsExpr,
args: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_member(
&mut self,
object: &JsExpr,
property: &JsExpr,
computed: bool,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_optional_member(
&mut self,
object: &JsExpr,
property: &JsExpr,
computed: bool,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_optional_call(
&mut self,
callee: &JsExpr,
args: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_nullish_coalescing(
&mut self,
left: &JsExpr,
right: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_logical_assignment(
&mut self,
op: &String,
left: &JsExpr,
right: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_array(
&mut self,
items: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_object(
&mut self,
props: &HashMap<String, JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_arrow_function(
&mut self,
params: &Vec<String>,
body: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_tse_element(
&mut self,
tag: &String,
attributes: &Vec<TseAttribute>,
children: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_conditional(
&mut self,
test: &JsExpr,
consequent: &JsExpr,
alternate: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_template_literal(
&mut self,
quasis: &Vec<String>,
expressions: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_spread(&mut self, expr: &JsExpr, span: &Span, trivia: &Trivia) -> R;
fn visit_type_of(
&mut self,
expr: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_instance_of(
&mut self,
left: &JsExpr,
right: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R;
fn visit_other(&mut self, code: &String, span: &Span, trivia: &Trivia) -> R;
}Expand description
表达式访问者 trait
Required Methods§
Sourcefn visit_identifier(&mut self, id: &String, span: &Span, trivia: &Trivia) -> R
fn visit_identifier(&mut self, id: &String, span: &Span, trivia: &Trivia) -> R
访问标识符表达式
Sourcefn visit_literal(
&mut self,
value: &NargoValue,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_literal( &mut self, value: &NargoValue, span: &Span, trivia: &Trivia, ) -> R
访问字面量表达式
Sourcefn visit_unary(
&mut self,
op: &String,
argument: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_unary( &mut self, op: &String, argument: &JsExpr, span: &Span, trivia: &Trivia, ) -> R
访问一元表达式
Sourcefn visit_binary(
&mut self,
left: &JsExpr,
op: &String,
right: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_binary( &mut self, left: &JsExpr, op: &String, right: &JsExpr, span: &Span, trivia: &Trivia, ) -> R
访问二元表达式
Sourcefn visit_call(
&mut self,
callee: &JsExpr,
args: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_call( &mut self, callee: &JsExpr, args: &Vec<JsExpr>, span: &Span, trivia: &Trivia, ) -> R
访问函数调用表达式
Sourcefn visit_member(
&mut self,
object: &JsExpr,
property: &JsExpr,
computed: bool,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_member( &mut self, object: &JsExpr, property: &JsExpr, computed: bool, span: &Span, trivia: &Trivia, ) -> R
访问成员访问表达式
Sourcefn visit_optional_member(
&mut self,
object: &JsExpr,
property: &JsExpr,
computed: bool,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_optional_member( &mut self, object: &JsExpr, property: &JsExpr, computed: bool, span: &Span, trivia: &Trivia, ) -> R
访问可选链成员访问表达式
Sourcefn visit_optional_call(
&mut self,
callee: &JsExpr,
args: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_optional_call( &mut self, callee: &JsExpr, args: &Vec<JsExpr>, span: &Span, trivia: &Trivia, ) -> R
访问可选链函数调用表达式
Sourcefn visit_nullish_coalescing(
&mut self,
left: &JsExpr,
right: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_nullish_coalescing( &mut self, left: &JsExpr, right: &JsExpr, span: &Span, trivia: &Trivia, ) -> R
访问空值合并表达式
Sourcefn visit_logical_assignment(
&mut self,
op: &String,
left: &JsExpr,
right: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_logical_assignment( &mut self, op: &String, left: &JsExpr, right: &JsExpr, span: &Span, trivia: &Trivia, ) -> R
访问逻辑赋值表达式
Sourcefn visit_array(
&mut self,
items: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_array( &mut self, items: &Vec<JsExpr>, span: &Span, trivia: &Trivia, ) -> R
访问数组字面量表达式
Sourcefn visit_object(
&mut self,
props: &HashMap<String, JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_object( &mut self, props: &HashMap<String, JsExpr>, span: &Span, trivia: &Trivia, ) -> R
访问对象字面量表达式
Sourcefn visit_arrow_function(
&mut self,
params: &Vec<String>,
body: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_arrow_function( &mut self, params: &Vec<String>, body: &JsExpr, span: &Span, trivia: &Trivia, ) -> R
访问箭头函数表达式
Sourcefn visit_tse_element(
&mut self,
tag: &String,
attributes: &Vec<TseAttribute>,
children: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_tse_element( &mut self, tag: &String, attributes: &Vec<TseAttribute>, children: &Vec<JsExpr>, span: &Span, trivia: &Trivia, ) -> R
访问 TSE 元素表达式
Sourcefn visit_conditional(
&mut self,
test: &JsExpr,
consequent: &JsExpr,
alternate: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_conditional( &mut self, test: &JsExpr, consequent: &JsExpr, alternate: &JsExpr, span: &Span, trivia: &Trivia, ) -> R
访问条件表达式
Sourcefn visit_template_literal(
&mut self,
quasis: &Vec<String>,
expressions: &Vec<JsExpr>,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_template_literal( &mut self, quasis: &Vec<String>, expressions: &Vec<JsExpr>, span: &Span, trivia: &Trivia, ) -> R
访问模板字面量表达式
Sourcefn visit_spread(&mut self, expr: &JsExpr, span: &Span, trivia: &Trivia) -> R
fn visit_spread(&mut self, expr: &JsExpr, span: &Span, trivia: &Trivia) -> R
访问展开表达式
Sourcefn visit_type_of(&mut self, expr: &JsExpr, span: &Span, trivia: &Trivia) -> R
fn visit_type_of(&mut self, expr: &JsExpr, span: &Span, trivia: &Trivia) -> R
访问类型测试表达式
Sourcefn visit_instance_of(
&mut self,
left: &JsExpr,
right: &JsExpr,
span: &Span,
trivia: &Trivia,
) -> R
fn visit_instance_of( &mut self, left: &JsExpr, right: &JsExpr, span: &Span, trivia: &Trivia, ) -> R
访问实例测试表达式
Sourcefn visit_other(&mut self, code: &String, span: &Span, trivia: &Trivia) -> R
fn visit_other(&mut self, code: &String, span: &Span, trivia: &Trivia) -> R
访问其他表达式