(command.CommandList
  children: [
    (C {(KW_Set set)} {(-e)})
    (C {(source)} {($ VSub_DollarName '$TRAVIS_BUILD_DIR') (/ci/travis_env_common.sh)})
    (C {(pushd)} {($ VSub_DollarName '$ARROW_C_GLIB_DIR')})
    (C {(export)} 
      {(Lit_VarLike 'LD_LIBRARY_PATH=') ($ VSub_DollarName '$LD_LIBRARY_PATH') (Lit_Other ':') 
        ($ VSub_DollarName '$ARROW_CPP_INSTALL') (/lib)
      }
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {($ VSub_DollarName '$BUILD_SYSTEM')} {(Lit_Equals '=')} 
                  {(DQ (autotools))} {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:arrow_c_glib_lib_dir)
                  op: Equal
                  rhs: {($ VSub_DollarName '$ARROW_C_GLIB_INSTALL') (/lib)}
                )
              ]
            )
          ]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:arrow_c_glib_lib_dir)
              op: Equal
              rhs: 
                {($ VSub_DollarName '$ARROW_C_GLIB_INSTALL') (/lib/) 
                  (command_sub
                    left_token: <Left_DollarParen '$('>
                    command_list: (command.CommandList children:[(C {(arch)})])
                  ) (-linux-gnu)
                }
            )
          ]
        )
      ]
    )
    (C {(export)} 
      {(Lit_VarLike 'LD_LIBRARY_PATH=') ($ VSub_DollarName '$LD_LIBRARY_PATH') (Lit_Other ':') 
        ($ VSub_DollarName '$arrow_c_glib_lib_dir')
      }
    )
    (C {(export)} 
      {(Lit_VarLike 'GI_TYPELIB_PATH=') ($ VSub_DollarName '$arrow_c_glib_lib_dir') 
        (/girepository-1.0)
      }
    )
    (C {(test/run-test.rb)})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {($ VSub_DollarName '$BUILD_SYSTEM')} {(Lit_Equals '=')} 
                  {(DQ (meson))} {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(command.ControlFlow token:<ControlFlow_Exit exit>)]
        )
      ]
    )
    (C {(export)} 
      {(Lit_VarLike 'PKG_CONFIG_PATH=') ($ VSub_DollarName '$PKG_CONFIG_PATH') (Lit_Other ':') 
        ($ VSub_DollarName '$ARROW_CPP_INSTALL') (/lib/pkgconfig)
      }
    )
    (C {(export)} 
      {(Lit_VarLike 'PKG_CONFIG_PATH=') ($ VSub_DollarName '$PKG_CONFIG_PATH') (Lit_Other ':') 
        ($ VSub_DollarName '$arrow_c_glib_lib_dir') (/pkgconfig)
      }
    )
    (C {(pushd)} {(example/lua)})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {($ VSub_DollarName '$TRAVIS_OS_NAME')} {(Lit_Equals '=')} 
                  {(DQ (osx))} {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(lua)} {(write-batch.lua)})
            (C {(lua)} {(read-batch.lua)})
            (C {(lua)} {(write-stream.lua)})
            (C {(lua)} {(read-stream.lua)})
          ]
        )
      ]
      else_action: [
        (command.If
          arms: [
            (if_arm
              cond: [
                (command.Sentence
                  child: 
                    (C {(Lit_LBracket '[')} {($ VSub_DollarName '$BUILD_TORCH_EXAMPLE')} 
                      {(Lit_Equals '=')} {(DQ (yes))} {(Lit_RBracket ']')}
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              action: [
                (C {(.)} 
                  {(word_part.TildeSub token:<Lit_TildeLike '~'>) (/torch/install/bin/torch-activate)}
                )
                (C {(luajit)} {(write-batch.lua)})
                (C {(luajit)} {(read-batch.lua)})
                (C {(luajit)} {(write-stream.lua)})
                (C {(luajit)} {(read-stream.lua)})
                (C {(luajit)} {(stream-to-torch-tensor.lua)})
              ]
            )
          ]
          else_action: [
            (C {(lua)} {(write-batch.lua)})
            (C {(lua)} {(read-batch.lua)})
            (C {(lua)} {(write-stream.lua)})
            (C {(lua)} {(read-stream.lua)})
          ]
        )
      ]
    )
    (C {(popd)})
    (C {(pushd)} {(example/go)})
    (C {(make)} {(generate)})
    (C {(make)})
    (C {(./write-batch)})
    (C {(./read-batch)})
    (C {(./write-stream)})
    (C {(./read-stream)})
    (C {(popd)})
    (C {(popd)})
  ]
)