(command.CommandList children: [ (C {<set>} {<-e>}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_EqualTilde left: {(DQ ($ Id.VSub_Number '$0'))} right: {(DQ <'scripts/genproto.sh'>)} ) ) ] negated: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<echo>} {(DQ <'must be run from repository root'>)}) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<255>}) ] spids: [20 39] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_EqualTilde left: { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<protoc>} {<--version>}) ) } right: {(DQ <3.1.0>)} ) ) ] negated: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<echo>} {(DQ <'could not find protoc 3.1.0, is it installed + in PATH?'>)}) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<255>}) ] spids: [56 77] ) ] ) (C {<export>} {<Id.Lit_VarLike 'PATH='> <.> <Id.Lit_Colon ':'> (${ Id.VSub_Name PATH)}) (C {<cd>} {($ Id.VSub_DollarName '$GOPATH') <'/src/github.com/rkt/rkt'>}) (C {<echo>} {(DQ <'building protoc-gen-go'>)}) (C {<pushd>} {<'vendor/github.com/golang/protobuf/protoc-gen-go'>}) (C {<go>} {<build>}) (C {<mv>} {<protoc-gen-go>} { (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<dirs>} {<-l>} {<Id.Lit_Other '+'> <1>}) ) } ) (C {<popd>}) (C {<trap>} {(SQ <'rm -f "protoc-gen-go"'>)} {<EXIT>}) (C {<echo>} {(DQ <'generating code'>)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:API_DIR) op: assign_op.Equal rhs: {(DQ <'api/v1alpha'>)} spids: [154] ) ] ) (C {<protoc>} {<-I>} {(DQ (${ Id.VSub_Name API_DIR))} {(DQ (${ Id.VSub_Name API_DIR)) <'/'> <Id.Lit_Star '*'> <.proto>} {<--go_out> <Id.Lit_Equals '='> <Id.Lit_VarLike 'plugins='> <grpc> <Id.Lit_Colon ':'> (DQ (${ Id.VSub_Name API_DIR)) } ) ] )