(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:out) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [3] ) ] ) (C {<shift>}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:in) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_At '$@'))} spids: [10] ) ] ) (command.Pipeline children: [ (command.ForEach iter_name: i iter_words: [{($ Id.VSub_DollarName '$in')}] do_arg_iter: F body: (command.DoGroup children: [ (C {<eval>} {($ Id.VSub_DollarName '$CPP')} {($ Id.VSub_DollarName '$LINUXINCLUDE')} {<-dD>} {<-imacros>} {(DQ ($ Id.VSub_DollarName '$i'))} {<-x>} {<c>} {<'/dev/null'>} ) ] ) ) (C {<awk>} { (SQ <'$1 == "#define" && $2 ~ /__HYPERVISOR_[a-z][a-z_0-9]*/ { v[$3] = $2 }\n'> <'\tEND { print "/* auto-generated by scripts/xen-hypercall.sh */"\n'> <'\t\tfor (i in v) if (!(v[i] in v))\n'> <'\t\t\tprint "HYPERCALL("substr(v[i], 14)")"}'> ) } ) (command.Simple words: [{<sort>} {<-u>}] redirects: [ (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$out')} ) ] do_fork: T ) ] negated: F ) ] )