[前][次][番号順一覧][スレッド一覧]

ruby-changes:30904

From: nobu <ko1@a...>
Date: Fri, 20 Sep 2013 13:53:12 +0900 (JST)
Subject: [ruby-changes:30904] nobu:r42983 (trunk): .gdbinit: rp_id

nobu	2013-09-20 13:53:04 +0900 (Fri, 20 Sep 2013)

  New Revision: 42983

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=42983

  Log:
    .gdbinit: rp_id
    
    * .gdbinit (rp_id): extract from rp and rb_id2name.

  Modified files:
    trunk/.gdbinit
Index: .gdbinit
===================================================================
--- .gdbinit	(revision 42982)
+++ .gdbinit	(revision 42983)
@@ -27,75 +27,8 @@ define rp https://github.com/ruby/ruby/blob/trunk/.gdbinit#L27
   else
   if ((VALUE)($arg0) & ~(~(VALUE)0<<RUBY_SPECIAL_SHIFT)) == RUBY_SYMBOL_FLAG
     set $id = (($arg0) >> RUBY_SPECIAL_SHIFT)
-    if $id == '!' || $id == '+' || $id == '-' || $id == '*' || $id == '/' || $id == '%' || $id == '<' || $id == '>' || $id == '`'
-      printf "SYMBOL(:%c)\n", $id
-    else
-    if $id == idDot2
-      printf "%sSYMBOL%s(:..)\n", $color_type, $color_end
-    else
-    if $id == idDot3
-      printf "%sSYMBOL%s(:...)\n", $color_type, $color_end
-    else
-    if $id == idUPlus
-      printf "%sSYMBOL%s(:+@)\n", $color_type, $color_end
-    else
-    if $id == idUMinus
-      printf "%sSYMBOL%s(:-@)\n", $color_type, $color_end
-    else
-    if $id == idPow
-      printf "%sSYMBOL%s(:**)\n", $color_type, $color_end
-    else
-    if $id == idCmp
-      printf "%sSYMBOL%s(:<=>)\n", $color_type, $color_end
-    else
-    if $id == idLTLT
-      printf "%sSYMBOL%s(:<<)\n", $color_type, $color_end
-    else
-    if $id == idLE
-      printf "%sSYMBOL%s(:<=)\n", $color_type, $color_end
-    else
-    if $id == idGE
-      printf "%sSYMBOL%s(:>=)\n", $color_type, $color_end
-    else
-    if $id == idEq
-      printf "%sSYMBOL%s(:==)\n", $color_type, $color_end
-    else
-    if $id == idEqq
-      printf "%sSYMBOL%s(:===)\n", $color_type, $color_end
-    else
-    if $id == idNeq
-      printf "%sSYMBOL%s(:!=)\n", $color_type, $color_end
-    else
-    if $id == idEqTilde
-      printf "%sSYMBOL%s(:=~)\n", $color_type, $color_end
-    else
-    if $id == idNeqTilde
-      printf "%sSYMBOL%s(:!~)\n", $color_type, $color_end
-    else
-    if $id == idAREF
-      printf "%sSYMBOL%s(:[])\n", $color_type, $color_end
-    else
-    if $id == idASET
-      printf "%sSYMBOL%s(:[]=)\n", $color_type, $color_end
-    else
-      printf "%sSYMBOL%s(%ld)\n", $color_type, $color_end, $id
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
-    end
+    printf "%sSYMBOL%s", $color_type, $color_end
+    rp_id $id
   else
   if ($arg0) == RUBY_Qfalse
     echo false\n
@@ -362,6 +295,88 @@ document rp https://github.com/ruby/ruby/blob/trunk/.gdbinit#L295
   Print a Ruby's VALUE.
 end
 
+define rp_id
+  set $id = (ID)$arg0
+  if $id == '!' || $id == '+' || $id == '-' || $id == '*' || $id == '/' || $id == '%' || $id == '<' || $id == '>' || $id == '`'
+    printf "(:%c)\n", $id
+  else
+  if $id == idDot2
+    printf "(:..)\n"
+  else
+  if $id == idDot3
+    printf "(:...)\n"
+  else
+  if $id == idUPlus
+    printf "(:+@)\n"
+  else
+  if $id == idUMinus
+    printf "(:-@)\n"
+  else
+  if $id == idPow
+    printf "(:**)\n"
+  else
+  if $id == idCmp
+    printf "(:<=>)\n"
+  else
+  if $id == idLTLT
+    printf "(:<<)\n"
+  else
+  if $id == idLE
+    printf "(:<=)\n"
+  else
+  if $id == idGE
+    printf "(:>=)\n"
+  else
+  if $id == idEq
+    printf "(:==)\n"
+  else
+  if $id == idEqq
+    printf "(:===)\n"
+  else
+  if $id == idNeq
+    printf "(:!=)\n"
+  else
+  if $id == idEqTilde
+    printf "(:=~)\n"
+  else
+  if $id == idNeqTilde
+    printf "(:!~)\n"
+  else
+  if $id == idAREF
+    printf "(:[])\n"
+  else
+  if $id == idASET
+    printf "(:[]=)\n"
+  else
+    printf "(%ld): ", $id
+    rb_numtable_entry global_symbols.id_str $id
+    if $rb_numtable_rec
+      rp $rb_numtable_rec
+    else
+      echo undef\n
+    end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+  end
+end
+document rp_id
+  Print an ID.
+end
+
 define rp_class
   printf "(struct RClass *) %p", (void*)$arg0
   if ((struct RClass *)($arg0))->ptr.origin != $arg0
@@ -689,12 +704,8 @@ define rb_numtable_entry https://github.com/ruby/ruby/blob/trunk/.gdbinit#L704
 end
 
 define rb_id2name
-  rb_numtable_entry global_symbols.id_str (ID)$arg0
-  if $rb_numtable_rec
-    rp $rb_numtable_rec
-  else
-    echo undef\n
-  end
+  printf "%sID%s: ", $color_type, $color_end
+  rp_id $arg0
 end
 document rb_id2name
   Print the name of id

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]