(command.CommandList children: [ (C {<echo>} { (DQ <'/*\n'> <' * Copyright 2008 Sun Microsystems, Inc. All rights reserved.\n'> <' * Use is subject to license terms.\n'> <' */\n'> <'\n'> <'#pragma ident'> <Id.Lit_BadBackslash '\\'> <t> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <'%Z%%M%'> <Id.Lit_BadBackslash '\\'> <'t%I%'> <Id.Lit_BadBackslash '\\'> <'t%E% SMI'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <'\n'> <'\n'> <'#include <strings.h>\n'> <'#include <scsi/libses.h>\n'> <'\n'> <'static const struct {\n'> <Id.Lit_BadBackslash '\\'> <'tchar *se_name;'> <Id.Lit_BadBackslash '\\'> <t> <Id.Lit_BadBackslash '\\'> <'t/* error name */\n'> <Id.Lit_BadBackslash '\\'> <'tchar *se_msg;'> <Id.Lit_BadBackslash '\\'> <t> <Id.Lit_BadBackslash '\\'> <'t/* error message */\n'> <'} _ses_errstr[] = {'> ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pattern='> name:pattern) op: assign_op.Equal rhs: {(SQ <'^\t\\(ESES_[A-Z0-9_]*\\),*'>)} spids: [120] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'replace='> name:replace) op: assign_op.Equal rhs: {(SQ <'\t{ "\\1",'>)} spids: [125] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'open='> name:open) op: assign_op.Equal rhs: {(SQ <'\t\\/\\* '>)} spids: [130] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'openrepl='> name:openrepl) op: assign_op.Equal rhs: {(SQ <'"'>)} spids: [135] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'close='> name:close) op: assign_op.Equal rhs: {(SQ <' \\*\\/$'>)} spids: [140] ) ] redirects: [] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'closerepl='> name:closerepl) op: assign_op.Equal rhs: {(SQ <'" },'>)} spids: [145] ) ] redirects: [] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Subshell child: (command.Pipeline children: [ (C {<sed>} {<-n>} { (DQ <'s/'> ($ Id.VSub_DollarName pattern) <'/'> ($ Id.VSub_DollarName replace) <'/p'>) } ) (C {<sed>} {<-n>} { (DQ <'s/'> ($ Id.VSub_DollarName open) <'/'> ($ Id.VSub_DollarName openrepl) <'/p'>) } ) (C {<sed>} {<-n>} { (DQ <'s/'> ($ Id.VSub_DollarName close) <'/'> ($ Id.VSub_DollarName closerepl) <'/p'>) } ) ] negated: F stderr_indices: [] ) redirects: [] ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] ) (C {<echo>} { (DQ <'};'> <Id.Lit_BadBackslash '\\'> <n> <Id.Lit_BadBackslash '\\'> <n> <'static int _ses_nerrno = sizeof (_ses_errstr) / sizeof (_ses_errstr[0]);'> <Id.Lit_BadBackslash '\\'> <n> <Id.Lit_BadBackslash '\\'> <n> <'const char *\n'> <'ses_strerror(ses_errno_t err)\n'> <'{\n'> <'\treturn (err < 0 || err >= _ses_nerrno ? '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <'unknown error'> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'> ch:'"') <' :\n'> <'\t _ses_errstr[err].se_msg);\n'> <'}\n'> <'\n'> <'const char *\n'> <'ses_errname(ses_errno_t err)\n'> <'{\n'> <'\treturn (err < 0 || err >= _ses_nerrno ? NULL :\n'> <'\t _ses_errstr[err].se_name);\n'> <'}\n'> <'\n'> <'ses_errno_t\n'> <'ses_errcode(const char *name)\n'> <'{\n'> <'\tses_errno_t err;\n'> <'\n'> <'\tfor (err = 0; err < _ses_nerrno; err++) {\n'> <'\t\tif (strcmp(name, _ses_errstr[err].se_name) == 0)\n'> <'\t\t\treturn (err);\n'> <'\t}\n'> <'\n'> <'\treturn (ESES_UNKNOWN);\n'> <'}'> ) } ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>}) ] )