(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike '_gemname='> name:_gemname) op: assign_op.Equal rhs: {<treetop>} spids: [3] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkgname='> name:pkgname) op: assign_op.Equal rhs: {<ruby-> ($ Id.VSub_DollarName _gemname)} spids: [6] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkgver='> name:pkgver) op: assign_op.Equal rhs: {<1.4.15>} spids: [10] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkgrel='> name:pkgrel) op: assign_op.Equal rhs: {<2>} spids: [13] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkgdesc='> name:pkgdesc) op: assign_op.Equal rhs: {(DQ <'A Ruby-based text parsing and interpretation DSL'>)} spids: [16] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'url='> name:url) op: assign_op.Equal rhs: {(DQ <'https://github.com/cjheath/treetop'>)} spids: [21] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'arch='> name:arch) op: assign_op.Equal rhs: {(DQ <noarch>)} spids: [26] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'license='> name:license) op: assign_op.Equal rhs: {(DQ <MIT>)} spids: [31] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'depends='> name:depends) op: assign_op.Equal rhs: {(DQ <'ruby ruby-polyglot'>)} spids: [36] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'depends_dev='> name:depends_dev) op: assign_op.Equal rhs: (rhs_word.Empty) spids: [41] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'makedepends='> name:makedepends) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName depends_dev) <' ruby'>)} spids: [43] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'install='> name:install) op: assign_op.Equal rhs: {(DQ )} spids: [49] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'subpackages='> name:subpackages) op: assign_op.Equal rhs: {(DQ )} spids: [53] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'source='> name:source) op: assign_op.Equal rhs: { (DQ <'http://gems.rubyforge.org/gems/'> ($ Id.VSub_DollarName _gemname) <-> ($ Id.VSub_DollarName pkgver) <.gem> ) } spids: [57] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike '_builddir='> name:_builddir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName srcdir)) <'/'> ($ Id.VSub_DollarName _realname) <-> ($ Id.VSub_DollarName pkgver) } spids: [67] ) ] redirects: [] ) (command.ShFunction name: build body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [(command.ControlFlow token:<Id.ControlFlow_Return return> arg_word:{<0>})] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name: package body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (C {<local>} {<Id.Lit_VarLike '_gemdir='> (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (C {<ruby>} {<-rubygems>} {<-e> (SQ <'puts Gem.default_dir'>)}) right: <Id.Eof_RParen _> ) ) } ) (C {<local>} {<Id.Lit_VarLike '_geminstdir='> ($ Id.VSub_DollarName _gemdir) <'/gems/'> ($ Id.VSub_DollarName _gemname) <-> ($ Id.VSub_DollarName pkgver) } ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName pkgdir))}) (command.ControlFlow token: <Id.ControlFlow_Return return> arg_word: {<1>} ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<gem>} {<install>} {<--local>} {<--install-dir>} {(DQ ($ Id.VSub_DollarName pkgdir)) <'/'> ($ Id.VSub_DollarName _gemdir)} {<--ignore-dependencies>} {<--verbose>} {<--no-rdoc>} {<--no-ri>} {(DQ ($ Id.VSub_DollarName srcdir)) <'/'> ($ Id.VSub_DollarName _gemname) <-> ($ Id.VSub_DollarName pkgver) <.gem> } ) (command.ControlFlow token: <Id.ControlFlow_Return return> arg_word: {<1>} ) ] ) (C {<rm>} {<-rf>} {(DQ ($ Id.VSub_DollarName pkgdir)) <'/'> ($ Id.VSub_DollarName _gemdir) <'/cache'>} {(DQ ($ Id.VSub_DollarName pkgdir)) <'/'> ($ Id.VSub_DollarName _geminstdir) <'/ext'>} {(DQ ($ Id.VSub_DollarName pkgdir)) <'/'> ($ Id.VSub_DollarName _geminstdir) <'/.require_paths'> } ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'md5sums='> name:md5sums) op: assign_op.Equal rhs: {(DQ <'87f30c0684d7760dce9feac8ff8bd869 treetop-1.4.15.gem'>)} spids: [214] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sha256sums='> name:sha256sums) op: assign_op.Equal rhs: { (DQ < 'ffa68f201c0f62c26b0a1d13233d73194400596964696843f87ebb5d812f12ff treetop-1.4.15.gem' > ) } spids: [219] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'sha512sums='> name:sha512sums) op: assign_op.Equal rhs: { (DQ < '350e3b4fc5236f5523e7ba7486699192a689d680e60687519ffdb8707241fce493a86713d1a0a1e243654c609e221b194e151c29bee9aa7cff71ab397223791b treetop-1.4.15.gem' > ) } spids: [224] ) ] redirects: [] ) ] )