Created
August 19, 2014 07:13
-
-
Save cjohansen/419cd5f2d19e298efcb0 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <body> | |
| <style> | |
| /* Basic reset */ | |
| * { | |
| margin: 0; | |
| padding: 0; | |
| } | |
| table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| } | |
| th, td { | |
| vertical-align: top; | |
| text-align: left; | |
| } | |
| textarea { | |
| resize: none; | |
| } | |
| body { | |
| font-size: 10pt; | |
| } | |
| body, td, input, textarea { | |
| font-family: helvetica neue, lucida grande, sans-serif; | |
| line-height: 1.5; | |
| color: #333; | |
| text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6); | |
| } | |
| html { | |
| background: #f0f0f5; | |
| } | |
| .clearfix::after{ | |
| clear: both; | |
| content: "."; | |
| display: block; | |
| height: 0; | |
| visibility: hidden; | |
| } | |
| /* --------------------------------------------------------------------- | |
| * Basic layout | |
| * --------------------------------------------------------------------- */ | |
| /* Small */ | |
| @media screen and (max-width: 1100px) { | |
| html { | |
| overflow-y: scroll; | |
| } | |
| body { | |
| margin: 0 20px; | |
| } | |
| header.exception { | |
| margin: 0 -20px; | |
| } | |
| nav.sidebar { | |
| padding: 0; | |
| margin: 20px 0; | |
| } | |
| ul.frames { | |
| max-height: 200px; | |
| overflow: auto; | |
| } | |
| } | |
| /* Wide */ | |
| @media screen and (min-width: 1100px) { | |
| header.exception { | |
| position: fixed; | |
| top: 0; | |
| left: 0; | |
| right: 0; | |
| } | |
| nav.sidebar, | |
| .frame_info { | |
| position: fixed; | |
| top: 95px; | |
| bottom: 0; | |
| box-sizing: border-box; | |
| overflow-y: auto; | |
| overflow-x: hidden; | |
| } | |
| nav.sidebar { | |
| width: 40%; | |
| left: 20px; | |
| top: 115px; | |
| bottom: 20px; | |
| } | |
| .frame_info { | |
| right: 0; | |
| left: 40%; | |
| padding: 20px; | |
| padding-left: 10px; | |
| margin-left: 30px; | |
| } | |
| } | |
| nav.sidebar { | |
| background: #d3d3da; | |
| border-top: solid 3px #a33; | |
| border-bottom: solid 3px #a33; | |
| border-radius: 4px; | |
| box-shadow: 0 0 6px rgba(0, 0, 0, 0.2), inset 0 0 0 1px rgba(0, 0, 0, 0.1); | |
| } | |
| /* --------------------------------------------------------------------- | |
| * Header | |
| * --------------------------------------------------------------------- */ | |
| header.exception { | |
| padding: 18px 20px; | |
| height: 59px; | |
| min-height: 59px; | |
| overflow: hidden; | |
| background-color: #20202a; | |
| color: #aaa; | |
| text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3); | |
| font-weight: 200; | |
| box-shadow: inset 0 -5px 3px -3px rgba(0, 0, 0, 0.05), inset 0 -1px 0 rgba(0, 0, 0, 0.05); | |
| -webkit-text-smoothing: antialiased; | |
| } | |
| /* Heading */ | |
| header.exception h2 { | |
| font-weight: 200; | |
| font-size: 11pt; | |
| } | |
| header.exception h2, | |
| header.exception p { | |
| line-height: 1.4em; | |
| overflow: hidden; | |
| white-space: pre; | |
| text-overflow: ellipsis; | |
| } | |
| header.exception h2 strong { | |
| font-weight: 700; | |
| color: #d55; | |
| } | |
| header.exception p { | |
| font-weight: 200; | |
| font-size: 20pt; | |
| color: white; | |
| } | |
| header.exception:hover { | |
| height: auto; | |
| z-index: 2; | |
| } | |
| header.exception:hover h2, | |
| header.exception:hover p { | |
| padding-right: 20px; | |
| overflow-y: auto; | |
| word-wrap: break-word; | |
| white-space: pre-wrap; | |
| height: auto; | |
| max-height: 7em; | |
| } | |
| @media screen and (max-width: 1100px) { | |
| header.exception { | |
| height: auto; | |
| } | |
| header.exception h2, | |
| header.exception p { | |
| padding-right: 20px; | |
| overflow-y: auto; | |
| word-wrap: break-word; | |
| height: auto; | |
| max-height: 7em; | |
| } | |
| } | |
| /* --------------------------------------------------------------------- | |
| * Navigation | |
| * --------------------------------------------------------------------- */ | |
| nav.tabs { | |
| border-bottom: solid 1px #ddd; | |
| background-color: #eee; | |
| text-align: center; | |
| padding: 6px; | |
| box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); | |
| } | |
| nav.tabs a { | |
| display: inline-block; | |
| height: 22px; | |
| line-height: 22px; | |
| padding: 0 10px; | |
| text-decoration: none; | |
| font-size: 8pt; | |
| font-weight: bold; | |
| color: #999; | |
| text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6); | |
| } | |
| nav.tabs a.selected { | |
| color: white; | |
| background: rgba(0, 0, 0, 0.5); | |
| border-radius: 16px; | |
| box-shadow: 1px 1px 0 rgba(255, 255, 255, 0.1); | |
| text-shadow: 0 0 4px rgba(0, 0, 0, 0.4), 0 1px 0 rgba(0, 0, 0, 0.4); | |
| } | |
| nav.tabs a.disabled { | |
| text-decoration: line-through; | |
| text-shadow: none; | |
| cursor: default; | |
| } | |
| /* --------------------------------------------------------------------- | |
| * Sidebar | |
| * --------------------------------------------------------------------- */ | |
| ul.frames { | |
| box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); | |
| } | |
| /* Each item */ | |
| ul.frames li { | |
| background-color: #f8f8f8; | |
| background: -webkit-linear-gradient(top, #f8f8f8 80%, #f0f0f0); | |
| background: -moz-linear-gradient(top, #f8f8f8 80%, #f0f0f0); | |
| background: linear-gradient(top, #f8f8f8 80%, #f0f0f0); | |
| box-shadow: inset 0 -1px 0 #e2e2e2; | |
| padding: 7px 20px; | |
| cursor: pointer; | |
| overflow: hidden; | |
| } | |
| ul.frames .name, | |
| ul.frames .location { | |
| overflow: hidden; | |
| height: 1.5em; | |
| white-space: nowrap; | |
| word-wrap: none; | |
| text-overflow: ellipsis; | |
| } | |
| ul.frames .method { | |
| color: #966; | |
| } | |
| ul.frames .location { | |
| font-size: 0.85em; | |
| font-weight: 400; | |
| color: #999; | |
| } | |
| ul.frames .line { | |
| font-weight: bold; | |
| } | |
| /* Selected frame */ | |
| ul.frames li.selected { | |
| background: #38a; | |
| box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.1), inset 0 2px 0 rgba(255, 255, 255, 0.01), inset 0 -1px 0 rgba(0, 0, 0, 0.1); | |
| } | |
| ul.frames li.selected .name, | |
| ul.frames li.selected .method, | |
| ul.frames li.selected .location { | |
| color: white; | |
| text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2); | |
| } | |
| ul.frames li.selected .location { | |
| opacity: 0.6; | |
| } | |
| /* Iconography */ | |
| ul.frames li { | |
| padding-left: 60px; | |
| position: relative; | |
| } | |
| ul.frames li .icon { | |
| display: block; | |
| width: 20px; | |
| height: 20px; | |
| line-height: 20px; | |
| border-radius: 15px; | |
| text-align: center; | |
| background: white; | |
| border: solid 2px #ccc; | |
| font-size: 9pt; | |
| font-weight: 200; | |
| font-style: normal; | |
| position: absolute; | |
| top: 14px; | |
| left: 20px; | |
| } | |
| ul.frames .icon.application { | |
| background: #808090; | |
| border-color: #555; | |
| } | |
| ul.frames .icon.application:before { | |
| content: 'A'; | |
| color: white; | |
| text-shadow: 0 0 3px rgba(0, 0, 0, 0.2); | |
| } | |
| /* Responsiveness -- flow to single-line mode */ | |
| @media screen and (max-width: 1100px) { | |
| ul.frames li { | |
| padding-top: 6px; | |
| padding-bottom: 6px; | |
| padding-left: 36px; | |
| line-height: 1.3; | |
| } | |
| ul.frames li .icon { | |
| width: 11px; | |
| height: 11px; | |
| line-height: 11px; | |
| top: 7px; | |
| left: 10px; | |
| font-size: 5pt; | |
| } | |
| ul.frames .name, | |
| ul.frames .location { | |
| display: inline-block; | |
| line-height: 1.3; | |
| height: 1.3em; | |
| } | |
| ul.frames .name { | |
| margin-right: 10px; | |
| } | |
| } | |
| /* --------------------------------------------------------------------- | |
| * Monospace | |
| * --------------------------------------------------------------------- */ | |
| pre, code, .repl input, .repl .prompt span, textarea, .code_linenums { | |
| font-family: menlo, lucida console, monospace; | |
| font-size: 8pt; | |
| } | |
| /* --------------------------------------------------------------------- | |
| * Display area | |
| * --------------------------------------------------------------------- */ | |
| .trace_info { | |
| background: #fff; | |
| padding: 6px; | |
| border-radius: 3px; | |
| margin-bottom: 2px; | |
| box-shadow: 0 0 10px rgba(0, 0, 0, 0.03), 1px 1px 0 rgba(0, 0, 0, 0.05), -1px 1px 0 rgba(0, 0, 0, 0.05), 0 0 0 4px rgba(0, 0, 0, 0.04); | |
| } | |
| .code_block{ | |
| background: #f1f1f1; | |
| border-left: 1px solid #ccc; | |
| } | |
| /* Titlebar */ | |
| .trace_info .title { | |
| background: #f1f1f1; | |
| box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3); | |
| overflow: hidden; | |
| padding: 6px 10px; | |
| border: solid 1px #ccc; | |
| border-bottom: 0; | |
| border-top-left-radius: 2px; | |
| border-top-right-radius: 2px; | |
| } | |
| .trace_info .title .name, | |
| .trace_info .title .location { | |
| font-size: 9pt; | |
| line-height: 26px; | |
| height: 26px; | |
| overflow: hidden; | |
| } | |
| .trace_info .title .location { | |
| float: left; | |
| font-weight: bold; | |
| font-size: 10pt; | |
| } | |
| .trace_info .title .location a { | |
| color:inherit; | |
| text-decoration:none; | |
| border-bottom:1px solid #aaaaaa; | |
| } | |
| .trace_info .title .location a:hover { | |
| border-color:#666666; | |
| } | |
| .trace_info .title .name { | |
| float: right; | |
| font-weight: 200; | |
| } | |
| .code, .console, .unavailable { | |
| background: #fff; | |
| padding: 5px; | |
| box-shadow: inset 3px 3px 3px rgba(0, 0, 0, 0.1), inset 0 0 0 1px rgba(0, 0, 0, 0.1); | |
| } | |
| .code_linenums{ | |
| background:#f1f1f1; | |
| padding-top:10px; | |
| padding-bottom:9px; | |
| float:left; | |
| } | |
| .code_linenums span{ | |
| display:block; | |
| padding:0 12px; | |
| } | |
| .code { | |
| margin-bottom: -1px; | |
| border-top-left-radius:2px; | |
| padding: 10px 0; | |
| overflow: auto; | |
| } | |
| .code pre{ | |
| padding-left:12px; | |
| min-height:16px; | |
| } | |
| /* Source unavailable */ | |
| p.unavailable { | |
| padding: 20px 0 40px 0; | |
| text-align: center; | |
| color: #b99; | |
| font-weight: bold; | |
| } | |
| p.unavailable:before { | |
| content: '\00d7'; | |
| display: block; | |
| color: #daa; | |
| text-align: center; | |
| font-size: 40pt; | |
| font-weight: normal; | |
| margin-bottom: -10px; | |
| } | |
| @-webkit-keyframes highlight { | |
| 0% { background: rgba(220, 30, 30, 0.3); } | |
| 100% { background: rgba(220, 30, 30, 0.1); } | |
| } | |
| @-moz-keyframes highlight { | |
| 0% { background: rgba(220, 30, 30, 0.3); } | |
| 100% { background: rgba(220, 30, 30, 0.1); } | |
| } | |
| @keyframes highlight { | |
| 0% { background: rgba(220, 30, 30, 0.3); } | |
| 100% { background: rgba(220, 30, 30, 0.1); } | |
| } | |
| .code .highlight, .code_linenums .highlight { | |
| background: rgba(220, 30, 30, 0.1); | |
| -webkit-animation: highlight 400ms linear 1; | |
| -moz-animation: highlight 400ms linear 1; | |
| animation: highlight 400ms linear 1; | |
| } | |
| /* REPL shell */ | |
| .console { | |
| padding: 0 1px 10px 1px; | |
| border-bottom-left-radius: 2px; | |
| border-bottom-right-radius: 2px; | |
| } | |
| .console pre { | |
| padding: 10px 10px 0 10px; | |
| max-height: 400px; | |
| overflow-x: none; | |
| overflow-y: auto; | |
| margin-bottom: -3px; | |
| word-wrap: break-word; | |
| white-space: pre-wrap; | |
| } | |
| /* .prompt > span + input */ | |
| .console .prompt { | |
| display: table; | |
| width: 100%; | |
| } | |
| .console .prompt span, | |
| .console .prompt input { | |
| display: table-cell; | |
| } | |
| .console .prompt span { | |
| width: 1%; | |
| padding-right: 5px; | |
| padding-left: 10px; | |
| } | |
| .console .prompt input { | |
| width: 99%; | |
| } | |
| /* Input box */ | |
| .console input, | |
| .console input:focus { | |
| outline: 0; | |
| border: 0; | |
| padding: 0; | |
| background: transparent; | |
| margin: 0; | |
| } | |
| /* Hint text */ | |
| .hint { | |
| margin: 15px 0 20px 0; | |
| font-size: 8pt; | |
| color: #8080a0; | |
| padding-left: 20px; | |
| } | |
| .hint:before { | |
| content: '\25b2'; | |
| margin-right: 5px; | |
| opacity: 0.5; | |
| } | |
| /* --------------------------------------------------------------------- | |
| * Variable infos | |
| * --------------------------------------------------------------------- */ | |
| .sub { | |
| padding: 10px 0; | |
| margin: 10px 0; | |
| } | |
| .sub:before { | |
| content: ''; | |
| display: block; | |
| width: 100%; | |
| height: 4px; | |
| border-radius: 2px; | |
| background: rgba(0, 150, 200, 0.05); | |
| box-shadow: 1px 1px 0 rgba(255, 255, 255, 0.7), inset 0 0 0 1px rgba(0, 0, 0, 0.04), inset 2px 2px 2px rgba(0, 0, 0, 0.07); | |
| } | |
| .sub h3 { | |
| color: #39a; | |
| font-size: 1.1em; | |
| margin: 10px 0; | |
| text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6); | |
| -webkit-font-smoothing: antialiased; | |
| } | |
| .sub .inset { | |
| overflow-y: auto; | |
| } | |
| .sub table { | |
| table-layout: fixed; | |
| } | |
| .sub table td { | |
| border-top: dotted 1px #ddd; | |
| padding: 7px 1px; | |
| } | |
| .sub table td.name { | |
| width: 150px; | |
| font-weight: bold; | |
| font-size: 0.8em; | |
| padding-right: 20px; | |
| word-wrap: break-word; | |
| } | |
| .sub table td pre { | |
| max-height: 15em; | |
| overflow-y: auto; | |
| } | |
| .sub table td pre { | |
| width: 100%; | |
| word-wrap: break-word; | |
| white-space: normal; | |
| } | |
| /* "(object doesn't support inspect)" */ | |
| .sub .unsupported { | |
| font-family: sans-serif; | |
| color: #777; | |
| } | |
| /* --------------------------------------------------------------------- | |
| * Scrollbar | |
| * --------------------------------------------------------------------- */ | |
| nav.sidebar::-webkit-scrollbar, | |
| .inset pre::-webkit-scrollbar, | |
| .console pre::-webkit-scrollbar, | |
| .code::-webkit-scrollbar { | |
| width: 10px; | |
| height: 10px; | |
| } | |
| .inset pre::-webkit-scrollbar-thumb, | |
| .console pre::-webkit-scrollbar-thumb, | |
| .code::-webkit-scrollbar-thumb { | |
| background: #ccc; | |
| border-radius: 5px; | |
| } | |
| nav.sidebar::-webkit-scrollbar-thumb { | |
| background: rgba(0, 0, 0, 0.0); | |
| border-radius: 5px; | |
| } | |
| nav.sidebar:hover::-webkit-scrollbar-thumb { | |
| background-color: #999; | |
| background: -webkit-linear-gradient(left, #aaa, #999); | |
| } | |
| .console pre:hover::-webkit-scrollbar-thumb, | |
| .inset pre:hover::-webkit-scrollbar-thumb, | |
| .code:hover::-webkit-scrollbar-thumb { | |
| background: #888; | |
| } | |
| </style> | |
| <script> | |
| (function() { | |
| var elements = ["section", "nav", "header", "footer", "audio"]; | |
| for (var i = 0; i < elements.length; i++) { | |
| document.createElement(elements[i]); | |
| } | |
| })(); | |
| </script> | |
| <script> | |
| if (window.Turbolinks) { | |
| for(var i=0; i < document.styleSheets.length; i++) { | |
| if(document.styleSheets[i].href) | |
| document.styleSheets[i].disabled = true; | |
| } | |
| document.addEventListener("page:restore", function restoreCSS(e) { | |
| for(var i=0; i < document.styleSheets.length; i++) { | |
| document.styleSheets[i].disabled = false; | |
| } | |
| document.removeEventListener("page:restore", restoreCSS, false); | |
| }); | |
| } | |
| </script> | |
| <div class="top"> | |
| <header class="exception"> | |
| <h2><strong>ActiveRecord::StatementInvalid</strong> <span>at /books</span></h2> | |
| <p>SQLite3::SQLException: no such table: books: SELECT "books".* FROM "books"</p> | |
| </header> | |
| </div> | |
| <section class="backtrace"> | |
| <nav class="sidebar"> | |
| <nav class="tabs"> | |
| <a href="#" id="application_frames" class="">Application Frames</a> | |
| <a href="#" id="all_frames" class="selected">All Frames</a> | |
| </nav> | |
| <ul class="frames"> | |
| <li class="gem" data-context="gem" data-index="0" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#log</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/abstract_adapter.rb</span>, line <span class="line">207</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="1" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#log</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/abstract_adapter.rb</span>, line <span class="line">199</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="2" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#execute</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/sqlite_adapter.rb</span>, line <span class="line">135</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="3" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#select</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/sqlite_adapter.rb</span>, line <span class="line">284</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="4" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#select_all</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/abstract/database_statements.rb</span>, line <span class="line">7</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="5" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#select_all</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/abstract/query_cache.rb</span>, line <span class="line">54</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="6" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#cache_sql</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/abstract/query_cache.rb</span>, line <span class="line">68</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="7" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#select_all</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/abstract/query_cache.rb</span>, line <span class="line">54</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="8" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Book</strong><span class="method">.find_by_sql</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/base.rb</span>, line <span class="line">467</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="" data-context="gem" data-index="9" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::Relation</strong><span class="method">#to_a</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/relation.rb</span>, line <span class="line">64</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="" data-context="gem" data-index="10" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::Relation</strong><span class="method">#all</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/relation/finder_methods.rb</span>, line <span class="line">143</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="" data-context="gem" data-index="11" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Book</strong><span class="method">.all</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/base.rb</span>, line <span class="line">439</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="selected" data-context="application" data-index="12" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon application"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#index</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">app/controllers/books_controller.rb</span>, line <span class="line">5</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="13" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#send_action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_controller/metal/implicit_render.rb</span>, line <span class="line">4</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="14" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#process_action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/abstract_controller/base.rb</span>, line <span class="line">150</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="15" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#process_action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_controller/metal/rendering.rb</span>, line <span class="line">11</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="16" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in BooksController</strong><span class="method">#process_action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/abstract_controller/callbacks.rb</span>, line <span class="line">18</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="17" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#_run__292662028487434682__process_action__1576781222393237974__callbacks</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activesupport (3.0.5) lib/active_support/callbacks.rb</span>, line <span class="line">435</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="18" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#_run_process_action_callbacks</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activesupport (3.0.5) lib/active_support/callbacks.rb</span>, line <span class="line">409</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="19" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#run_callbacks</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activesupport (3.0.5) lib/active_support/callbacks.rb</span>, line <span class="line">93</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="20" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#process_action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/abstract_controller/callbacks.rb</span>, line <span class="line">17</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="21" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in BooksController</strong><span class="method">#process_action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_controller/metal/instrumentation.rb</span>, line <span class="line">30</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="22" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in ActiveSupport::Notifications</strong><span class="method">.instrument</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activesupport (3.0.5) lib/active_support/notifications.rb</span>, line <span class="line">52</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="23" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveSupport::Notifications::Instrumenter</strong><span class="method">#instrument</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activesupport (3.0.5) lib/active_support/notifications/instrumenter.rb</span>, line <span class="line">21</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="24" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveSupport::Notifications</strong><span class="method">.instrument</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activesupport (3.0.5) lib/active_support/notifications.rb</span>, line <span class="line">52</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="25" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#process_action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_controller/metal/instrumentation.rb</span>, line <span class="line">29</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="26" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#process_action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_controller/metal/rescue.rb</span>, line <span class="line">17</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="27" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#process</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/abstract_controller/base.rb</span>, line <span class="line">119</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="28" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#process</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/abstract_controller/rendering.rb</span>, line <span class="line">41</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="29" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#dispatch</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_controller/metal.rb</span>, line <span class="line">138</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="30" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BooksController</strong><span class="method">#dispatch</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_controller/metal/rack_delegation.rb</span>, line <span class="line">14</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="31" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in BooksController</strong><span class="method">.action</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_controller/metal.rb</span>, line <span class="line">178</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="32" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Routing::RouteSet::Dispatcher</strong><span class="method">#dispatch</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/routing/route_set.rb</span>, line <span class="line">62</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="33" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Routing::RouteSet::Dispatcher</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/routing/route_set.rb</span>, line <span class="line">27</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="34" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in Rack::Mount::RouteSet</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack-mount (0.6.14) lib/rack/mount/route_set.rb</span>, line <span class="line">148</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="35" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in Rack::Mount::RouteSet</strong><span class="method">#recognize</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack-mount (0.6.14) lib/rack/mount/code_generation.rb</span>, line <span class="line">93</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="36" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Array</strong><span class="method">#optimized_each</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack-mount (0.6.14) lib/rack/mount/code_generation.rb</span>, line <span class="line">68</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="37" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rack::Mount::RouteSet</strong><span class="method">#recognize</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack-mount (0.6.14) lib/rack/mount/code_generation.rb</span>, line <span class="line">92</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="38" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rack::Mount::RouteSet</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack-mount (0.6.14) lib/rack/mount/route_set.rb</span>, line <span class="line">139</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="39" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Routing::RouteSet</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/routing/route_set.rb</span>, line <span class="line">492</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="40" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BetterErrors::Middleware</strong><span class="method">#protected_app_call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">better_errors (1.1.0) lib/better_errors/middleware.rb</span>, line <span class="line">84</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="41" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BetterErrors::Middleware</strong><span class="method">#better_errors_call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">better_errors (1.1.0) lib/better_errors/middleware.rb</span>, line <span class="line">79</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="42" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>BetterErrors::Middleware</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">better_errors (1.1.0) lib/better_errors/middleware.rb</span>, line <span class="line">56</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="43" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::BestStandardsSupport</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/best_standards_support.rb</span>, line <span class="line">17</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="44" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Head</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/head.rb</span>, line <span class="line">14</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="45" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rack::MethodOverride</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack (1.2.8) lib/rack/methodoverride.rb</span>, line <span class="line">24</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="46" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::ParamsParser</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/params_parser.rb</span>, line <span class="line">21</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="47" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Flash</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/flash.rb</span>, line <span class="line">182</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="48" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Session::CookieStore</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/session/abstract_store.rb</span>, line <span class="line">149</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="49" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Cookies</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/cookies.rb</span>, line <span class="line">302</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="50" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in ActiveRecord::QueryCache</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/query_cache.rb</span>, line <span class="line">32</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="51" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::SQLite3Adapter</strong><span class="method">#cache</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/abstract/query_cache.rb</span>, line <span class="line">28</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="52" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::Base</strong><span class="method">.cache</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/query_cache.rb</span>, line <span class="line">12</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="53" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::QueryCache</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/query_cache.rb</span>, line <span class="line">31</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="54" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveRecord::ConnectionAdapters::ConnectionManagement</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activerecord (3.0.5) lib/active_record/connection_adapters/abstract/connection_pool.rb</span>, line <span class="line">354</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="55" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in ActionDispatch::Callbacks</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/callbacks.rb</span>, line <span class="line">46</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="56" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Callbacks</strong><span class="method">#_run_call_callbacks</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activesupport (3.0.5) lib/active_support/callbacks.rb</span>, line <span class="line">415</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="57" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Callbacks</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/callbacks.rb</span>, line <span class="line">44</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="58" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rack::Sendfile</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack (1.2.8) lib/rack/sendfile.rb</span>, line <span class="line">106</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="59" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::RemoteIp</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/remote_ip.rb</span>, line <span class="line">48</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="60" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::ShowExceptions</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/show_exceptions.rb</span>, line <span class="line">47</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="61" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rails::Rack::Logger</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">railties (3.0.5) lib/rails/rack/logger.rb</span>, line <span class="line">13</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="62" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rack::Runtime</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack (1.2.8) lib/rack/runtime.rb</span>, line <span class="line">17</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="63" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActiveSupport::Cache::Strategy::LocalCache</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">activesupport (3.0.5) lib/active_support/cache/strategy/local_cache.rb</span>, line <span class="line">72</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="64" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in Rack::Lock</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack (1.2.8) lib/rack/lock.rb</span>, line <span class="line">13</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="65" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rack::Lock</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack (1.2.8) lib/rack/lock.rb</span>, line <span class="line">13</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="66" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>ActionDispatch::Static</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">actionpack (3.0.5) lib/action_dispatch/middleware/static.rb</span>, line <span class="line">30</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="67" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Noteworthy::Application</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">railties (3.0.5) lib/rails/application.rb</span>, line <span class="line">168</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="68" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Noteworthy::Application</strong><span class="method">.method_missing</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">railties (3.0.5) lib/rails/application.rb</span>, line <span class="line">77</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="69" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rails::Rack::LogTailer</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">railties (3.0.5) lib/rails/rack/log_tailer.rb</span>, line <span class="line">14</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="70" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rack::ContentLength</strong><span class="method">#call</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack (1.2.8) lib/rack/content_length.rb</span>, line <span class="line">13</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="gem" data-context="gem" data-index="71" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon gem"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>Rack::Handler::WEBrick</strong><span class="method">#service</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">rack (1.2.8) lib/rack/handler/webrick.rb</span>, line <span class="line">52</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="dunno" data-context="dunno" data-index="72" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon dunno"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>WEBrick::HTTPServer</strong><span class="method">#service</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/webrick/httpserver.rb</span>, line <span class="line">138</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="dunno" data-context="dunno" data-index="73" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon dunno"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>WEBrick::HTTPServer</strong><span class="method">#run</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/webrick/httpserver.rb</span>, line <span class="line">94</span> | |
| </div> | |
| </div> | |
| </li> | |
| <li class="dunno" data-context="dunno" data-index="74" style="display: block;"> | |
| <span class="stroke"></span> | |
| <i class="icon dunno"></i> | |
| <div class="info"> | |
| <div class="name"> | |
| <strong>block in WEBrick::HTTPServer</strong><span class="method">#start_thread</span> | |
| </div> | |
| <div class="location"> | |
| <span class="filename">/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/webrick/server.rb</span>, line <span class="line">295</span> | |
| </div> | |
| </div> | |
| </li> | |
| </ul> | |
| </nav> | |
| <div class="frame_info" id="frame_info_0" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_1" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_2" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_3" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_4" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_5" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_6" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_7" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_8" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_9" style="display: none;"><header class="trace_info clearfix"> | |
| <div class="title"> | |
| <h2 class="name">to_a</h2> | |
| <div class="location"><span class="filename"><a href="txmt://open?url=file://%2FLibrary%2FRuby%2FGems%2F2.0.0%2Fgems%2Factiverecord-3.0.5%2Flib%2Factive_record%2Frelation.rb&line=64">activerecord (3.0.5) lib/active_record/relation.rb</a></span></div> | |
| </div> | |
| <div class="code_block clearfix"> | |
| <div class="code_linenums"><span class=""> 59</span><span class=""> 60</span><span class=""> 61</span><span class=""> 62</span><span class=""> 63</span><span class="highlight"> 64</span><span class=""> 65</span><span class=""> 66</span><span class=""> 67</span><span class=""> 68</span><span class=""> 69</span></div><div class="code"><pre class=""> <span style="color:#080;font-weight:bold">end</span> | |
| </pre><pre class=""></pre><pre class=""> <span style="color:#080;font-weight:bold">def</span> <span style="color:#06B;font-weight:bold">to_a</span> | |
| </pre><pre class=""> <span style="color:#080;font-weight:bold">return</span> <span style="color:#33B">@records</span> <span style="color:#080;font-weight:bold">if</span> loaded? | |
| </pre><pre class=""></pre><pre class="highlight"> <span style="color:#33B">@records</span> = eager_loading? ? find_with_associations : <span style="color:#33B">@klass</span>.find_by_sql(arel.to_sql) | |
| </pre><pre class=""></pre><pre class=""> preload = <span style="color:#33B">@preload_values</span> | |
| </pre><pre class=""> preload += <span style="color:#33B">@includes_values</span> <span style="color:#080;font-weight:bold">unless</span> eager_loading? | |
| </pre><pre class=""> preload.each {|associations| <span style="color:#33B">@klass</span>.send(<span style="color:#A60">:preload_associations</span>, <span style="color:#33B">@records</span>, associations) } | |
| </pre><pre class=""></pre></div> | |
| </div> | |
| <div class="repl"> | |
| <div class="console"> | |
| <pre></pre> | |
| <div class="prompt"><span>>></span> <input></div> | |
| </div> | |
| </div> | |
| </header> | |
| <div class="hint"> | |
| This is a live shell. Type in here. | |
| </div> | |
| <div class="variable_info"></div> | |
| <div class="sub"> | |
| <h3>Request info</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">Request parameters</td><td><pre>{"action"=>"index", "controller"=>"books"}</pre></td></tr> | |
| <tr><td class="name">Rack session</td><td><pre>{}</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <div class="sub"> | |
| <h3>Local Variables</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">preload</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">readonly</td><td><pre>nil</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <div class="sub"> | |
| <h3>Instance Variables</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">@table</td><td><pre>#<Arel::Table:0x007fd22b2a85a0 @name="books", @engine=ActiveRecord::Base, @columns=nil, @aliases=[], @table_alias=nil, @primary_key=nil></pre></td></tr> | |
| <tr><td class="name">@klass</td><td><pre>Book(Table doesn't exist)</pre></td></tr> | |
| <tr><td class="name">@implicit_readonly</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@loaded</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@limit_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@offset_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@lock_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@readonly_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@create_with_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@from_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@includes_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@eager_load_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@preload_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@select_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@group_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@order_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@joins_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@where_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@having_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@extensions</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@arel</td><td><pre>#<Arel::SelectManager:0x007fd22b2b3518 @engine=ActiveRecord::Base, @visitor=#<Arel::Visitors::SQLite:0x007fd22b2b34a0 @engine=ActiveRecord::Base, @connection=#<ActiveRecord::ConnectionAdapters::SQLite3Adapter:0x007fd22b31ada8 @active=false, @logger=#<ActiveSupport::BufferedLogger:0x007fd22c374320 @level=0, @buffer={}, @auto_flushing=1, @guard=#<Mutex:0x007fd22c2ff0e8>, @log=#<File:/Users/christian/projects/spid/noteworthy/log/development.log>>, @connection=#<SQLite3::Database:0x007fd22b31ae70 @tracefunc=nil, @authorizer=nil, @encoding=nil, @busy_handler=nil, @collations={}, @functions={}, @results_as_hash=true, @type_translation=nil, @readonly=false>, @query_cache_enabled=false, @query_cache={}, @instrumenter=#<ActiveSupport::Notifications::Instrumenter:0x007fd22b31ac40 @id="e33221010e4b837b1203", @notifier=#<ActiveSupport::Notifications::Fanout:0x007fd22c33ee78 @subscribers=[#<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33eef0 @pattern="start_processing.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f170 @pattern="process_action.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f2b0 @pattern="send_file.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f490 @pattern="redirect_to.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33fbc0 @pattern="send_data.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f918 @pattern="write_fragment.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f698 @pattern="read_fragment.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33ed60 @pattern="exist_fragment?.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33eb08 @pattern="expire_fragment.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33e8d8 @pattern="expire_page.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33e630 @pattern="write_page.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33e388 @pattern="logger.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c619e40 @pattern="render_template.action_view", @delegate=#<ActionView::LogSubscriber:0x007fd22c619fa8>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c619cd8 @pattern="render_partial.action_view", @delegate=#<ActionView::LogSubscriber:0x007fd22c619fa8>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c619af8 @pattern="render_collection.action_view", @delegate=#<ActionView::LogSubscriber:0x007fd22c619fa8>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c619918 @pattern="logger.action_view", @delegate=#<ActionView::LogSubscriber:0x007fd22c619fa8>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22b33bb98 @pattern="sql.active_record", @delegate=#<ActiveRecord::LogSubscriber:0x007fd22b33bcd8 @odd_or_even=false>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22b33ba80 @pattern="odd?.active_record", @delegate=#<ActiveRecord::LogSubscriber:0x007fd22b33bcd8 @odd_or_even=false>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22b33b968 @pattern="logger.active_record", @delegate=#<ActiveRecord::LogSubscriber:0x007fd22b33bcd8 @odd_or_even=false>>], @listeners_for={"start_processing.action_controller"=>[#<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33eef0 @pattern="start_processing.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>], "process_action.action_controller"=>[#<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f170 @pattern="process_action.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>], "sql.active_record"=>[#<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22b33bb98 @pattern="sql.active_record", @delegate=#<ActiveRecord::LogSubscriber:0x007fd22b33bcd8 @odd_or_even=false>>]}>>, @config={:adapter=>"sqlite3", :database=>"/Users/christian/projects/spid/noteworthy/db/development.sqlite3", :pool=>5, :timeout=>5000}>, @quoted_tables={"books"=>"\"books\""}, @quoted_columns={}>, @ctx=#<Arel::Nodes::SelectCore:0x007fd22b2b3310 @top=nil, @froms=#<Arel::Table:0x007fd22b2a85a0 @name="books", @engine=ActiveRecord::Base, @columns=nil, @aliases=[], @table_alias=nil, @primary_key=nil>, @projections=["\"books\".*"], @wheres=[], @groups=[], @having=nil>, @ast=#<Arel::Nodes::SelectStatement:0x007fd22b2b3338 @cores=[#<Arel::Nodes::SelectCore:0x007fd22b2b3310 @top=nil, @froms=#<Arel::Table:0x007fd22b2a85a0 @name="books", @engine=ActiveRecord::Base, @columns=nil, @aliases=[], @table_alias=nil, @primary_key=nil>, @projections=["\"books\".*"], @wheres=[], @groups=[], @having=nil>], @orders=[], @limit=nil, @lock=nil, @offset=nil>></pre></td></tr> | |
| <tr><td class="name">@scope_for_create</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@order_clause</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@to_sql</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@last</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@first</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@join_dependency</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@should_eager_load</td><td><pre>false</pre></td></tr> | |
| <tr><td class="name">@records</td><td><pre>[]</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <!-- 0.004834175109863281 seconds --> | |
| </div> | |
| <div class="frame_info" id="frame_info_10" style="display: none;"><header class="trace_info clearfix"> | |
| <div class="title"> | |
| <h2 class="name">all</h2> | |
| <div class="location"><span class="filename"><a href="txmt://open?url=file://%2FLibrary%2FRuby%2FGems%2F2.0.0%2Fgems%2Factiverecord-3.0.5%2Flib%2Factive_record%2Frelation%2Ffinder_methods.rb&line=143">activerecord (3.0.5) lib/active_record/relation/finder_methods.rb</a></span></div> | |
| </div> | |
| <div class="code_block clearfix"> | |
| <div class="code_linenums"><span class=""> 138</span><span class=""> 139</span><span class=""> 140</span><span class=""> 141</span><span class=""> 142</span><span class="highlight"> 143</span><span class=""> 144</span><span class=""> 145</span><span class=""> 146</span><span class=""> 147</span><span class=""> 148</span></div><div class="code"><pre class=""> <span style="color:#080;font-weight:bold">end</span> | |
| </pre><pre class=""></pre><pre class=""> <span style="color:#777"># A convenience wrapper for <tt>find(:all, *args)</tt>. You can pass in all the</span> | |
| </pre><pre class=""> <span style="color:#777"># same arguments to this method as you can to <tt>find(:all)</tt>.</span> | |
| </pre><pre class=""> <span style="color:#080;font-weight:bold">def</span> <span style="color:#06B;font-weight:bold">all</span>(*args) | |
| </pre><pre class="highlight"> args.any? ? apply_finder_options(args.first).to_a : to_a | |
| </pre><pre class=""> <span style="color:#080;font-weight:bold">end</span> | |
| </pre><pre class=""></pre><pre class=""> <span style="color:#777"># Returns true if a record exists in the table that matches the +id+ or</span> | |
| </pre><pre class=""> <span style="color:#777"># conditions given, or false otherwise. The argument can take five forms:</span> | |
| </pre><pre class=""> <span style="color:#777">#</span> | |
| </pre></div> | |
| </div> | |
| <div class="repl"> | |
| <div class="console"> | |
| <pre></pre> | |
| <div class="prompt"><span>>></span> <input></div> | |
| </div> | |
| </div> | |
| </header> | |
| <div class="hint"> | |
| This is a live shell. Type in here. | |
| </div> | |
| <div class="variable_info"></div> | |
| <div class="sub"> | |
| <h3>Request info</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">Request parameters</td><td><pre>{"action"=>"index", "controller"=>"books"}</pre></td></tr> | |
| <tr><td class="name">Rack session</td><td><pre>{}</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <div class="sub"> | |
| <h3>Local Variables</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">args</td><td><pre>[]</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <div class="sub"> | |
| <h3>Instance Variables</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">@table</td><td><pre>#<Arel::Table:0x007fd22b2a85a0 @name="books", @engine=ActiveRecord::Base, @columns=nil, @aliases=[], @table_alias=nil, @primary_key=nil></pre></td></tr> | |
| <tr><td class="name">@klass</td><td><pre>Book(Table doesn't exist)</pre></td></tr> | |
| <tr><td class="name">@implicit_readonly</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@loaded</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@limit_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@offset_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@lock_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@readonly_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@create_with_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@from_value</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@includes_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@eager_load_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@preload_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@select_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@group_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@order_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@joins_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@where_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@having_values</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@extensions</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">@arel</td><td><pre>#<Arel::SelectManager:0x007fd22b2b3518 @engine=ActiveRecord::Base, @visitor=#<Arel::Visitors::SQLite:0x007fd22b2b34a0 @engine=ActiveRecord::Base, @connection=#<ActiveRecord::ConnectionAdapters::SQLite3Adapter:0x007fd22b31ada8 @active=false, @logger=#<ActiveSupport::BufferedLogger:0x007fd22c374320 @level=0, @buffer={}, @auto_flushing=1, @guard=#<Mutex:0x007fd22c2ff0e8>, @log=#<File:/Users/christian/projects/spid/noteworthy/log/development.log>>, @connection=#<SQLite3::Database:0x007fd22b31ae70 @tracefunc=nil, @authorizer=nil, @encoding=nil, @busy_handler=nil, @collations={}, @functions={}, @results_as_hash=true, @type_translation=nil, @readonly=false>, @query_cache_enabled=false, @query_cache={}, @instrumenter=#<ActiveSupport::Notifications::Instrumenter:0x007fd22b31ac40 @id="e33221010e4b837b1203", @notifier=#<ActiveSupport::Notifications::Fanout:0x007fd22c33ee78 @subscribers=[#<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33eef0 @pattern="start_processing.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f170 @pattern="process_action.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f2b0 @pattern="send_file.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f490 @pattern="redirect_to.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33fbc0 @pattern="send_data.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f918 @pattern="write_fragment.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f698 @pattern="read_fragment.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33ed60 @pattern="exist_fragment?.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33eb08 @pattern="expire_fragment.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33e8d8 @pattern="expire_page.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33e630 @pattern="write_page.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33e388 @pattern="logger.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c619e40 @pattern="render_template.action_view", @delegate=#<ActionView::LogSubscriber:0x007fd22c619fa8>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c619cd8 @pattern="render_partial.action_view", @delegate=#<ActionView::LogSubscriber:0x007fd22c619fa8>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c619af8 @pattern="render_collection.action_view", @delegate=#<ActionView::LogSubscriber:0x007fd22c619fa8>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c619918 @pattern="logger.action_view", @delegate=#<ActionView::LogSubscriber:0x007fd22c619fa8>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22b33bb98 @pattern="sql.active_record", @delegate=#<ActiveRecord::LogSubscriber:0x007fd22b33bcd8 @odd_or_even=true>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22b33ba80 @pattern="odd?.active_record", @delegate=#<ActiveRecord::LogSubscriber:0x007fd22b33bcd8 @odd_or_even=true>>, #<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22b33b968 @pattern="logger.active_record", @delegate=#<ActiveRecord::LogSubscriber:0x007fd22b33bcd8 @odd_or_even=true>>], @listeners_for={"start_processing.action_controller"=>[#<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33eef0 @pattern="start_processing.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>], "process_action.action_controller"=>[#<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22c33f170 @pattern="process_action.action_controller", @delegate=#<ActionController::LogSubscriber:0x007fd22c30e7f0>>], "sql.active_record"=>[#<ActiveSupport::Notifications::Fanout::Subscriber:0x007fd22b33bb98 @pattern="sql.active_record", @delegate=#<ActiveRecord::LogSubscriber:0x007fd22b33bcd8 @odd_or_even=true>>]}>>, @config={:adapter=>"sqlite3", :database=>"/Users/christian/projects/spid/noteworthy/db/development.sqlite3", :pool=>5, :timeout=>5000}>, @quoted_tables={"books"=>"\"books\""}, @quoted_columns={}>, @ctx=#<Arel::Nodes::SelectCore:0x007fd22b2b3310 @top=nil, @froms=#<Arel::Table:0x007fd22b2a85a0 @name="books", @engine=ActiveRecord::Base, @columns=nil, @aliases=[], @table_alias=nil, @primary_key=nil>, @projections=["\"books\".*"], @wheres=[], @groups=[], @having=nil>, @ast=#<Arel::Nodes::SelectStatement:0x007fd22b2b3338 @cores=[#<Arel::Nodes::SelectCore:0x007fd22b2b3310 @top=nil, @froms=#<Arel::Table:0x007fd22b2a85a0 @name="books", @engine=ActiveRecord::Base, @columns=nil, @aliases=[], @table_alias=nil, @primary_key=nil>, @projections=["\"books\".*"], @wheres=[], @groups=[], @having=nil>], @orders=[], @limit=nil, @lock=nil, @offset=nil>></pre></td></tr> | |
| <tr><td class="name">@scope_for_create</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@order_clause</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@to_sql</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@last</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@first</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@join_dependency</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@should_eager_load</td><td><pre>false</pre></td></tr> | |
| <tr><td class="name">@records</td><td><pre>[]</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <!-- 0.006144046783447266 seconds --> | |
| </div> | |
| <div class="frame_info" id="frame_info_11" style="display: none;"><header class="trace_info clearfix"> | |
| <div class="title"> | |
| <h2 class="name">all</h2> | |
| <div class="location"><span class="filename"><a href="txmt://open?url=file://%2FLibrary%2FRuby%2FGems%2F2.0.0%2Fgems%2Factiverecord-3.0.5%2Flib%2Factive_record%2Fbase.rb&line=439">activerecord (3.0.5) lib/active_record/base.rb</a></span></div> | |
| </div> | |
| <div class="code_block clearfix"> | |
| <div class="code_linenums"><span class=""> 434</span><span class=""> 435</span><span class=""> 436</span><span class=""> 437</span><span class=""> 438</span><span class="highlight"> 439</span><span class=""> 440</span><span class=""> 441</span><span class=""> 442</span><span class=""> 443</span><span class=""> 444</span></div><div class="code"><pre class=""> <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">"</span><span style="color:#D20">config.active_record.colorize_logging are deprecated. Please use </span><span style="color:#710">"</span></span> << | |
| </pre><pre class=""> <span style="background-color:hsla(0,100%,50%,0.05)"><span style="color:#710">"</span><span style="color:#D20">Rails::LogSubscriber.colorize_logging or config.colorize_logging instead</span><span style="color:#710">"</span></span>, caller | |
| </pre><pre class=""> <span style="color:#080;font-weight:bold">end</span> | |
| </pre><pre class=""> <span style="color:#080;font-weight:bold">alias</span> <span style="color:#A60">:colorize_logging=</span> <span style="color:#A60">:colorize_logging</span> | |
| </pre><pre class=""></pre><pre class="highlight"> delegate <span style="color:#A60">:find</span>, <span style="color:#A60">:first</span>, <span style="color:#A60">:last</span>, <span style="color:#A60">:all</span>, <span style="color:#A60">:destroy</span>, <span style="color:#A60">:destroy_all</span>, <span style="color:#A60">:exists?</span>, <span style="color:#A60">:delete</span>, <span style="color:#A60">:delete_all</span>, <span style="color:#A60">:update</span>, <span style="color:#A60">:update_all</span>, <span style="color:#A60">:to</span> => <span style="color:#A60">:scoped</span> | |
| </pre><pre class=""> delegate <span style="color:#A60">:find_each</span>, <span style="color:#A60">:find_in_batches</span>, <span style="color:#A60">:to</span> => <span style="color:#A60">:scoped</span> | |
| </pre><pre class=""> delegate <span style="color:#A60">:select</span>, <span style="color:#A60">:group</span>, <span style="color:#A60">:order</span>, <span style="color:#A60">:reorder</span>, <span style="color:#A60">:except</span>, <span style="color:#A60">:limit</span>, <span style="color:#A60">:offset</span>, <span style="color:#A60">:joins</span>, <span style="color:#A60">:where</span>, <span style="color:#A60">:preload</span>, <span style="color:#A60">:eager_load</span>, <span style="color:#A60">:includes</span>, <span style="color:#A60">:from</span>, <span style="color:#A60">:lock</span>, <span style="color:#A60">:readonly</span>, <span style="color:#A60">:having</span>, <span style="color:#A60">:create_with</span>, <span style="color:#A60">:to</span> => <span style="color:#A60">:scoped</span> | |
| </pre><pre class=""> delegate <span style="color:#A60">:count</span>, <span style="color:#A60">:average</span>, <span style="color:#A60">:minimum</span>, <span style="color:#A60">:maximum</span>, <span style="color:#A60">:sum</span>, <span style="color:#A60">:calculate</span>, <span style="color:#A60">:to</span> => <span style="color:#A60">:scoped</span> | |
| </pre><pre class=""></pre><pre class=""> <span style="color:#777"># Executes a custom SQL query against your database and returns all the results. The results will</span> | |
| </pre></div> | |
| </div> | |
| <div class="repl"> | |
| <div class="console"> | |
| <pre></pre> | |
| <div class="prompt"><span>>></span> <input></div> | |
| </div> | |
| </div> | |
| </header> | |
| <div class="hint"> | |
| This is a live shell. Type in here. | |
| </div> | |
| <div class="variable_info"></div> | |
| <div class="sub"> | |
| <h3>Request info</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">Request parameters</td><td><pre>{"action"=>"index", "controller"=>"books"}</pre></td></tr> | |
| <tr><td class="name">Rack session</td><td><pre>{}</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <div class="sub"> | |
| <h3>Local Variables</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">args</td><td><pre>[]</pre></td></tr> | |
| <tr><td class="name">block</td><td><pre>nil</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <div class="sub"> | |
| <h3>Instance Variables</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">@inheritable_attributes</td><td><pre>{:default_scoping=>[], :attribute_method_matchers=>[#<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c285d10 @suffix="?", @prefix="", @regex=/^()(.+?)(\?)$/>, #<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c28efa0 @suffix="_before_type_cast", @prefix="", @regex=/^()(.+?)(_before_type_cast)$/>, #<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c28e2f8 @suffix="=", @prefix="", @regex=/^()(.+?)(=)$/>, #<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c28d510 @suffix="", @prefix="", @regex=/^()(.+?)()$/>, #<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c5742d8 @suffix="_changed?", @prefix="", @regex=/^()(.+?)(_changed\?)$/>, #<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c57fc28 @suffix="_change", @prefix="", @regex=/^()(.+?)(_change)$/>, #<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c57f110 @suffix="_will_change!", @prefix="", @regex=/^()(.+?)(_will_change!)$/>, #<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c57e558 @suffix="_was", @prefix="", @regex=/^()(.+?)(_was)$/>, #<ActiveModel::AttributeMethods::ClassMethods::AttributeMethodMatcher:0x007fd22c57cd48 @suffix="!", @prefix="reset_", @regex=/^(reset_)(.+?)(!)$/>], :skip_time_zone_conversion_for_attributes=>[], :record_timestamps=>true, :nested_attributes_options=>{}}</pre></td></tr> | |
| <tr><td class="name">@parent_name</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@quoted_table_name</td><td><pre>"\"books\""</pre></td></tr> | |
| <tr><td class="name">@arel_engine</td><td><pre>ActiveRecord::Base</pre></td></tr> | |
| <tr><td class="name">@arel_table</td><td><pre>#<Arel::Table:0x007fd22b2a85a0 @name="books", @engine=ActiveRecord::Base, @columns=nil, @aliases=[], @table_alias=nil, @primary_key=nil></pre></td></tr> | |
| <tr><td class="name">@relation</td><td><pre><span class="unsupported">(exception was raised in inspect)</span></pre></td></tr> | |
| <tr><td class="name">@finder_needs_type_condition</td><td><pre>:false</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <!-- 0.005861759185791016 seconds --> | |
| </div> | |
| <div class="frame_info" id="frame_info_12" style="display: block;"><header class="trace_info clearfix"> | |
| <div class="title"> | |
| <h2 class="name">index</h2> | |
| <div class="location"><span class="filename"><a href="txmt://open?url=file://%2FUsers%2Fchristian%2Fprojects%2Fspid%2Fnoteworthy%2Fapp%2Fcontrollers%2Fbooks_controller.rb&line=5">app/controllers/books_controller.rb</a></span></div> | |
| </div> | |
| <div class="code_block clearfix"> | |
| <div class="code_linenums"><span class=""> 1</span><span class=""> 2</span><span class=""> 3</span><span class=""> 4</span><span class="highlight"> 5</span><span class=""> 6</span><span class=""> 7</span><span class=""> 8</span><span class=""> 9</span><span class=""> 10</span></div><div class="code"><pre class=""><span style="color:#080;font-weight:bold">class</span> <span style="color:#B06;font-weight:bold">BooksController</span> < <span style="color:#036;font-weight:bold">ApplicationController</span> | |
| </pre><pre class=""> <span style="color:#777"># GET /books</span> | |
| </pre><pre class=""> <span style="color:#777"># GET /books.xml</span> | |
| </pre><pre class=""> <span style="color:#080;font-weight:bold">def</span> <span style="color:#06B;font-weight:bold">index</span> | |
| </pre><pre class="highlight"> <span style="color:#33B">@books</span> = <span style="color:#036;font-weight:bold">Book</span>.all | |
| </pre><pre class=""></pre><pre class=""> respond_to <span style="color:#080;font-weight:bold">do</span> |format| | |
| </pre><pre class=""> format.html <span style="color:#777"># index.html.erb</span> | |
| </pre><pre class=""> format.xml { render <span style="color:#A60">:xml</span> => <span style="color:#33B">@books</span> } | |
| </pre><pre class=""> <span style="color:#080;font-weight:bold">end</span> | |
| </pre></div> | |
| </div> | |
| <div class="repl" id="abId0.30890824319794774"> | |
| <div class="console" id="abId0.98031124798581"> | |
| <pre></pre> | |
| <div class="prompt" id="abId0.9701839743647724"><span>>></span> <input></div> | |
| </div> | |
| </div> | |
| </header> | |
| <div class="hint"> | |
| This is a live shell. Type in here. | |
| </div> | |
| <div class="variable_info"></div> | |
| <div class="sub"> | |
| <h3>Request info</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">Request parameters</td><td><pre>{"action"=>"index", "controller"=>"books"}</pre></td></tr> | |
| <tr><td class="name">Rack session</td><td><pre>{}</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <div class="sub"> | |
| <h3>Local Variables</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| </table> | |
| </div> | |
| </div> | |
| <div class="sub"> | |
| <h3>Instance Variables</h3> | |
| <div class="inset variables"> | |
| <table class="var_table"> | |
| <tbody><tr><td class="name">@action_has_layout</td><td><pre>true</pre></td></tr> | |
| <tr><td class="name">@view_context_class</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@_headers</td><td><pre>{"Content-Type"=>"text/html"}</pre></td></tr> | |
| <tr><td class="name">@_status</td><td><pre>200</pre></td></tr> | |
| <tr><td class="name">@_response</td><td><pre>#<ActionDispatch::Response:0x007fd22b64a7a8 @writer=#<Proc:0x007fd22b64a6e0@/Library/Ruby/Gems/2.0.0/gems/actionpack-3.0.5/lib/action_dispatch/http/response.rb:43 (lambda)>, @block=nil, @length=0, @header={}, @status=200, @body=[], @cookie=[], @sending_file=false, @blank=false, @cache_control={}, @etag=nil, @request=#<ActionDispatch::Request:0x007fd22b64a7d0 @env={"GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/books", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"GET", "REQUEST_URI"=>"http://localhost:3001/books", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3001", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/2.0.0/2014-02-24)", "HTTP_HOST"=>"localhost:3001", "HTTP_CONNECTION"=>"keep-alive", "HTTP_CACHE_CONTROL"=>"max-age=0", "HTTP_ACCEPT"=>"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "HTTP_USER_AGENT"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36", "HTTP_ACCEPT_ENCODING"=>"gzip,deflate,sdch", "HTTP_ACCEPT_LANGUAGE"=>"en-US,en;q=0.8,nb;q=0.6,sv;q=0.4,da;q=0.2", "HTTP_COOKIE"=>"lang=clojure; PHPSESSID=c5e0dae5dab7e3164315ff32c025fe03; JSESSIONID=z77azh4lqd5x1hupb5alpmjdj; pid=null; ring-session=8cd2d315-be90-4f12-a1ae-042b190fa300; language=java", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x007fd22c236c88>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>true, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"9d39ca6b681cd45f39cd3cb1da16bee98ce18733d0eaf63d31531f998cb06b90d553591381dff73a62f6c9e3e25106fd3006bdc68a0424f40d2b5f9e5327c69e", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x007fd22c39c398 @env={...}, @check_ip_spoofing=true, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "rack.session"=>{}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>nil}, "rack.request.cookie_string"=>"lang=clojure; PHPSESSID=c5e0dae5dab7e3164315ff32c025fe03; JSESSIONID=z77azh4lqd5x1hupb5alpmjdj; pid=null; ring-session=8cd2d315-be90-4f12-a1ae-042b190fa300; language=java", "rack.request.cookie_hash"=>{"lang"=>"clojure", "PHPSESSID"=>"c5e0dae5dab7e3164315ff32c025fe03", "JSESSIONID"=>"z77azh4lqd5x1hupb5alpmjdj", "pid"=>"null", "ring-session"=>"8cd2d315-be90-4f12-a1ae-042b190fa300", "language"=>"java"}, "action_dispatch.cookies"=>{"lang"=>"clojure", "PHPSESSID"=>"c5e0dae5dab7e3164315ff32c025fe03", "JSESSIONID"=>"z77azh4lqd5x1hupb5alpmjdj", "pid"=>"null", "ring-session"=>"8cd2d315-be90-4f12-a1ae-042b190fa300", "language"=>"java"}, "action_dispatch.request.unsigned_session_cookie"=>{}, "action_dispatch.request.path_parameters"=>{:action=>"index", :controller=>"books"}, "action_controller.instance"=>#<BooksController:0x007fd22b64a938 @action_has_layout=true, @view_context_class=nil, @_headers={"Content-Type"=>"text/html"}, @_status=200, @_response=#<ActionDispatch::Response:0x007fd22b64a7a8 ...>, @_request=#<ActionDispatch::Request:0x007fd22b64a7d0 ...>, @_env={...}, @lookup_context=#<ActionView::LookupContext:0x007fd22b89d730 @details_key=nil, @details={:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=false, @view_paths=[#<ActionView::FileSystemResolver:0x007fd22c1f4338 @cached={}, @path="/Users/christian/projects/spid/noteworthy/app/views">]>, @_action_name="index", @_response_body=nil, @_config={}>, "action_dispatch.request.content_type"=>nil, "action_dispatch.request.request_parameters"=>{}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"action"=>"index", "controller"=>"books"}, "action_dispatch.request.formats"=>[#<Mime::Type:0x007fd22c32c610 @synonyms=["application/xhtml+xml"], @symbol=:html, @string="text/html">]}, @fullpath="/books", @request_method="GET", @filtered_parameters={"action"=>"index", "controller"=>"books"}, @method="GET">></pre></td></tr> | |
| <tr><td class="name">@_request</td><td><pre>#<ActionDispatch::Request:0x007fd22b64a7d0 @env={"GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/books", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"GET", "REQUEST_URI"=>"http://localhost:3001/books", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3001", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/2.0.0/2014-02-24)", "HTTP_HOST"=>"localhost:3001", "HTTP_CONNECTION"=>"keep-alive", "HTTP_CACHE_CONTROL"=>"max-age=0", "HTTP_ACCEPT"=>"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "HTTP_USER_AGENT"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36", "HTTP_ACCEPT_ENCODING"=>"gzip,deflate,sdch", "HTTP_ACCEPT_LANGUAGE"=>"en-US,en;q=0.8,nb;q=0.6,sv;q=0.4,da;q=0.2", "HTTP_COOKIE"=>"lang=clojure; PHPSESSID=c5e0dae5dab7e3164315ff32c025fe03; JSESSIONID=z77azh4lqd5x1hupb5alpmjdj; pid=null; ring-session=8cd2d315-be90-4f12-a1ae-042b190fa300; language=java", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x007fd22c236c88>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>true, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"9d39ca6b681cd45f39cd3cb1da16bee98ce18733d0eaf63d31531f998cb06b90d553591381dff73a62f6c9e3e25106fd3006bdc68a0424f40d2b5f9e5327c69e", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x007fd22c39c398 @env={...}, @check_ip_spoofing=true, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "rack.session"=>{}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>nil}, "rack.request.cookie_string"=>"lang=clojure; PHPSESSID=c5e0dae5dab7e3164315ff32c025fe03; JSESSIONID=z77azh4lqd5x1hupb5alpmjdj; pid=null; ring-session=8cd2d315-be90-4f12-a1ae-042b190fa300; language=java", "rack.request.cookie_hash"=>{"lang"=>"clojure", "PHPSESSID"=>"c5e0dae5dab7e3164315ff32c025fe03", "JSESSIONID"=>"z77azh4lqd5x1hupb5alpmjdj", "pid"=>"null", "ring-session"=>"8cd2d315-be90-4f12-a1ae-042b190fa300", "language"=>"java"}, "action_dispatch.cookies"=>{"lang"=>"clojure", "PHPSESSID"=>"c5e0dae5dab7e3164315ff32c025fe03", "JSESSIONID"=>"z77azh4lqd5x1hupb5alpmjdj", "pid"=>"null", "ring-session"=>"8cd2d315-be90-4f12-a1ae-042b190fa300", "language"=>"java"}, "action_dispatch.request.unsigned_session_cookie"=>{}, "action_dispatch.request.path_parameters"=>{:action=>"index", :controller=>"books"}, "action_controller.instance"=>#<BooksController:0x007fd22b64a938 @action_has_layout=true, @view_context_class=nil, @_headers={"Content-Type"=>"text/html"}, @_status=200, @_response=#<ActionDispatch::Response:0x007fd22b64a7a8 @writer=#<Proc:0x007fd22b64a6e0@/Library/Ruby/Gems/2.0.0/gems/actionpack-3.0.5/lib/action_dispatch/http/response.rb:43 (lambda)>, @block=nil, @length=0, @header={}, @status=200, @body=[], @cookie=[], @sending_file=false, @blank=false, @cache_control={}, @etag=nil, @request=#<ActionDispatch::Request:0x007fd22b64a7d0 ...>>, @_request=#<ActionDispatch::Request:0x007fd22b64a7d0 ...>, @_env={...}, @lookup_context=#<ActionView::LookupContext:0x007fd22b89d730 @details_key=nil, @details={:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=false, @view_paths=[#<ActionView::FileSystemResolver:0x007fd22c1f4338 @cached={}, @path="/Users/christian/projects/spid/noteworthy/app/views">]>, @_action_name="index", @_response_body=nil, @_config={}>, "action_dispatch.request.content_type"=>nil, "action_dispatch.request.request_parameters"=>{}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"action"=>"index", "controller"=>"books"}, "action_dispatch.request.formats"=>[#<Mime::Type:0x007fd22c32c610 @synonyms=["application/xhtml+xml"], @symbol=:html, @string="text/html">]}, @fullpath="/books", @request_method="GET", @filtered_parameters={"action"=>"index", "controller"=>"books"}, @method="GET"></pre></td></tr> | |
| <tr><td class="name">@_env</td><td><pre>{"GATEWAY_INTERFACE"=>"CGI/1.1", "PATH_INFO"=>"/books", "QUERY_STRING"=>"", "REMOTE_ADDR"=>"127.0.0.1", "REMOTE_HOST"=>"localhost", "REQUEST_METHOD"=>"GET", "REQUEST_URI"=>"http://localhost:3001/books", "SCRIPT_NAME"=>"", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3001", "SERVER_PROTOCOL"=>"HTTP/1.1", "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/2.0.0/2014-02-24)", "HTTP_HOST"=>"localhost:3001", "HTTP_CONNECTION"=>"keep-alive", "HTTP_CACHE_CONTROL"=>"max-age=0", "HTTP_ACCEPT"=>"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "HTTP_USER_AGENT"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36", "HTTP_ACCEPT_ENCODING"=>"gzip,deflate,sdch", "HTTP_ACCEPT_LANGUAGE"=>"en-US,en;q=0.8,nb;q=0.6,sv;q=0.4,da;q=0.2", "HTTP_COOKIE"=>"lang=clojure; PHPSESSID=c5e0dae5dab7e3164315ff32c025fe03; JSESSIONID=z77azh4lqd5x1hupb5alpmjdj; pid=null; ring-session=8cd2d315-be90-4f12-a1ae-042b190fa300; language=java", "rack.version"=>[1, 1], "rack.input"=>#<StringIO:0x007fd22c236c88>, "rack.errors"=>#<IO:<STDERR>>, "rack.multithread"=>true, "rack.multiprocess"=>false, "rack.run_once"=>false, "rack.url_scheme"=>"http", "HTTP_VERSION"=>"HTTP/1.1", "REQUEST_PATH"=>"/", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.secret_token"=>"9d39ca6b681cd45f39cd3cb1da16bee98ce18733d0eaf63d31531f998cb06b90d553591381dff73a62f6c9e3e25106fd3006bdc68a0424f40d2b5f9e5327c69e", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x007fd22c39c398 @env={...}, @check_ip_spoofing=true, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "rack.session"=>{}, "rack.session.options"=>{:path=>"/", :domain=>nil, :expire_after=>nil, :secure=>false, :httponly=>true, :id=>nil}, "rack.request.cookie_string"=>"lang=clojure; PHPSESSID=c5e0dae5dab7e3164315ff32c025fe03; JSESSIONID=z77azh4lqd5x1hupb5alpmjdj; pid=null; ring-session=8cd2d315-be90-4f12-a1ae-042b190fa300; language=java", "rack.request.cookie_hash"=>{"lang"=>"clojure", "PHPSESSID"=>"c5e0dae5dab7e3164315ff32c025fe03", "JSESSIONID"=>"z77azh4lqd5x1hupb5alpmjdj", "pid"=>"null", "ring-session"=>"8cd2d315-be90-4f12-a1ae-042b190fa300", "language"=>"java"}, "action_dispatch.cookies"=>{"lang"=>"clojure", "PHPSESSID"=>"c5e0dae5dab7e3164315ff32c025fe03", "JSESSIONID"=>"z77azh4lqd5x1hupb5alpmjdj", "pid"=>"null", "ring-session"=>"8cd2d315-be90-4f12-a1ae-042b190fa300", "language"=>"java"}, "action_dispatch.request.unsigned_session_cookie"=>{}, "action_dispatch.request.path_parameters"=>{:action=>"index", :controller=>"books"}, "action_controller.instance"=>#<BooksController:0x007fd22b64a938 @action_has_layout=true, @view_context_class=nil, @_headers={"Content-Type"=>"text/html"}, @_status=200, @_response=#<ActionDispatch::Response:0x007fd22b64a7a8 @writer=#<Proc:0x007fd22b64a6e0@/Library/Ruby/Gems/2.0.0/gems/actionpack-3.0.5/lib/action_dispatch/http/response.rb:43 (lambda)>, @block=nil, @length=0, @header={}, @status=200, @body=[], @cookie=[], @sending_file=false, @blank=false, @cache_control={}, @etag=nil, @request=#<ActionDispatch::Request:0x007fd22b64a7d0 @env={...}, @fullpath="/books", @request_method="GET", @filtered_parameters={"action"=>"index", "controller"=>"books"}, @method="GET">>, @_request=#<ActionDispatch::Request:0x007fd22b64a7d0 @env={...}, @fullpath="/books", @request_method="GET", @filtered_parameters={"action"=>"index", "controller"=>"books"}, @method="GET">, @_env={...}, @lookup_context=#<ActionView::LookupContext:0x007fd22b89d730 @details_key=nil, @details={:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=false, @view_paths=[#<ActionView::FileSystemResolver:0x007fd22c1f4338 @cached={}, @path="/Users/christian/projects/spid/noteworthy/app/views">]>, @_action_name="index", @_response_body=nil, @_config={}>, "action_dispatch.request.content_type"=>nil, "action_dispatch.request.request_parameters"=>{}, "rack.request.query_string"=>"", "rack.request.query_hash"=>{}, "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.parameters"=>{"action"=>"index", "controller"=>"books"}, "action_dispatch.request.formats"=>[#<Mime::Type:0x007fd22c32c610 @synonyms=["application/xhtml+xml"], @symbol=:html, @string="text/html">]}</pre></td></tr> | |
| <tr><td class="name">@lookup_context</td><td><pre>#<ActionView::LookupContext:0x007fd22b89d730 @details_key=nil, @details={:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=false, @view_paths=[#<ActionView::FileSystemResolver:0x007fd22c1f4338 @cached={}, @path="/Users/christian/projects/spid/noteworthy/app/views">]></pre></td></tr> | |
| <tr><td class="name">@_action_name</td><td><pre>"index"</pre></td></tr> | |
| <tr><td class="name">@_response_body</td><td><pre>nil</pre></td></tr> | |
| <tr><td class="name">@_config</td><td><pre>{}</pre></td></tr> | |
| </tbody></table> | |
| </div> | |
| </div> | |
| <!-- 0.05380702018737793 seconds --> | |
| </div> | |
| <div class="frame_info" id="frame_info_13" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_14" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_15" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_16" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_17" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_18" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_19" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_20" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_21" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_22" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_23" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_24" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_25" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_26" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_27" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_28" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_29" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_30" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_31" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_32" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_33" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_34" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_35" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_36" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_37" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_38" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_39" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_40" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_41" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_42" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_43" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_44" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_45" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_46" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_47" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_48" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_49" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_50" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_51" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_52" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_53" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_54" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_55" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_56" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_57" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_58" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_59" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_60" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_61" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_62" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_63" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_64" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_65" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_66" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_67" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_68" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_69" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_70" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_71" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_72" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_73" style="display:none;"></div> | |
| <div class="frame_info" id="frame_info_74" style="display:none;"></div> | |
| </section> | |
| <script> | |
| (function() { | |
| var OID = "70270322116460"; | |
| var previousFrame = null; | |
| var previousFrameInfo = null; | |
| var allFrames = document.querySelectorAll("ul.frames li"); | |
| var allFrameInfos = document.querySelectorAll(".frame_info"); | |
| function apiCall(method, opts, cb) { | |
| var req = new XMLHttpRequest(); | |
| req.open("POST", "" + "/__better_errors/" + OID + "/" + method, true); | |
| req.setRequestHeader("Content-Type", "application/json"); | |
| req.send(JSON.stringify(opts)); | |
| req.onreadystatechange = function() { | |
| if(req.readyState == 4) { | |
| var res = JSON.parse(req.responseText); | |
| cb(res); | |
| } | |
| }; | |
| } | |
| function escapeHTML(html) { | |
| return html.replace(/&/, "&").replace(/</g, "<"); | |
| } | |
| function REPL(index) { | |
| this.index = index; | |
| var previousCommands = JSON.parse(localStorage.getItem("better_errors_previous_commands")); | |
| if(previousCommands === null) { | |
| localStorage.setItem("better_errors_previous_commands", JSON.stringify([])); | |
| previousCommands = []; | |
| } | |
| this.previousCommandOffset = previousCommands.length; | |
| } | |
| REPL.all = []; | |
| REPL.prototype.install = function(containerElement) { | |
| this.container = containerElement; | |
| this.promptElement = this.container.querySelector(".prompt span"); | |
| this.inputElement = this.container.querySelector("input"); | |
| this.outputElement = this.container.querySelector("pre"); | |
| var self = this; | |
| this.inputElement.onkeydown = function(ev) { | |
| self.onKeyDown(ev); | |
| }; | |
| this.setPrompt(">>"); | |
| REPL.all[this.index] = this; | |
| } | |
| REPL.prototype.focus = function() { | |
| this.inputElement.focus(); | |
| }; | |
| REPL.prototype.setPrompt = function(prompt) { | |
| this._prompt = prompt; | |
| this.promptElement.innerHTML = escapeHTML(prompt); | |
| }; | |
| REPL.prototype.getInput = function() { | |
| return this.inputElement.value; | |
| }; | |
| REPL.prototype.setInput = function(text) { | |
| this.inputElement.value = text; | |
| if(this.inputElement.setSelectionRange) { | |
| // set cursor to end of input | |
| this.inputElement.setSelectionRange(text.length, text.length); | |
| } | |
| }; | |
| REPL.prototype.writeRawOutput = function(output) { | |
| this.outputElement.innerHTML += output; | |
| this.outputElement.scrollTop = this.outputElement.scrollHeight; | |
| }; | |
| REPL.prototype.writeOutput = function(output) { | |
| this.writeRawOutput(escapeHTML(output)); | |
| }; | |
| REPL.prototype.sendInput = function(line) { | |
| var self = this; | |
| apiCall("eval", { "index": this.index, source: line }, function(response) { | |
| if(response.error) { | |
| self.writeOutput(response.error + "\n"); | |
| } | |
| self.writeOutput(self._prompt + " "); | |
| self.writeRawOutput(response.highlighted_input + "\n"); | |
| self.writeOutput(response.result); | |
| self.setPrompt(response.prompt); | |
| self.setInput(response.prefilled_input); | |
| }); | |
| }; | |
| REPL.prototype.onEnterKey = function() { | |
| var text = this.getInput(); | |
| if(text != "" && text !== undefined) { | |
| var previousCommands = JSON.parse(localStorage.getItem("better_errors_previous_commands")); | |
| this.previousCommandOffset = previousCommands.push(text); | |
| if(previousCommands.length > 100) { | |
| previousCommands.splice(0, 1); | |
| } | |
| localStorage.setItem("better_errors_previous_commands", JSON.stringify(previousCommands)); | |
| } | |
| this.setInput(""); | |
| this.sendInput(text); | |
| }; | |
| REPL.prototype.onNavigateHistory = function(direction) { | |
| this.previousCommandOffset += direction; | |
| var previousCommands = JSON.parse(localStorage.getItem("better_errors_previous_commands")); | |
| if(this.previousCommandOffset < 0) { | |
| this.previousCommandOffset = -1; | |
| this.setInput(""); | |
| return; | |
| } | |
| if(this.previousCommandOffset >= previousCommands.length) { | |
| this.previousCommandOffset = previousCommands.length; | |
| this.setInput(""); | |
| return; | |
| } | |
| this.setInput(previousCommands[this.previousCommandOffset]); | |
| }; | |
| REPL.prototype.onKeyDown = function(ev) { | |
| if(ev.keyCode == 13) { | |
| this.onEnterKey(); | |
| } else if(ev.keyCode == 38 || (ev.ctrlKey && ev.keyCode == 80)) { | |
| // the user pressed the up arrow or Ctrl-P | |
| this.onNavigateHistory(-1); | |
| ev.preventDefault(); | |
| return false; | |
| } else if(ev.keyCode == 40 || (ev.ctrlKey && ev.keyCode == 78)) { | |
| // the user pressed the down arrow or Ctrl-N | |
| this.onNavigateHistory(1); | |
| ev.preventDefault(); | |
| return false; | |
| } | |
| }; | |
| function switchTo(el) { | |
| if(previousFrameInfo) previousFrameInfo.style.display = "none"; | |
| previousFrameInfo = el; | |
| el.style.display = "block"; | |
| var replInput = el.querySelector('.console input'); | |
| if (replInput) replInput.focus(); | |
| } | |
| function selectFrameInfo(index) { | |
| var el = allFrameInfos[index]; | |
| if(el) { | |
| if (el.loaded) { | |
| return switchTo(el); | |
| } | |
| apiCall("variables", { "index": index }, function(response) { | |
| el.loaded = true; | |
| if(response.error) { | |
| el.innerHTML = "<span class='error'>" + escapeHTML(response.error) + "</span>"; | |
| } else { | |
| el.innerHTML = response.html; | |
| var repl = el.querySelector(".repl .console"); | |
| if(repl) { | |
| new REPL(index).install(repl); | |
| } | |
| switchTo(el); | |
| } | |
| }); | |
| } | |
| } | |
| for(var i = 0; i < allFrames.length; i++) { | |
| (function(i, el) { | |
| var el = allFrames[i]; | |
| el.onclick = function() { | |
| if(previousFrame) { | |
| previousFrame.className = ""; | |
| } | |
| el.className = "selected"; | |
| previousFrame = el; | |
| selectFrameInfo(el.attributes["data-index"].value); | |
| }; | |
| })(i); | |
| } | |
| // Click the first application frame | |
| ( | |
| document.querySelector(".frames li.application") || | |
| document.querySelector(".frames li") | |
| ).onclick(); | |
| // This is the second query performed for frames; maybe the 'allFrames' list | |
| // currently used and this list can be better used to avoid the repetition: | |
| var applicationFramesCount = document.querySelectorAll( | |
| "ul.frames li[data-context=application]" | |
| ).length; | |
| var applicationFramesButtonIsInstalled = false; | |
| var applicationFramesButton = document.getElementById("application_frames"); | |
| var allFramesButton = document.getElementById("all_frames"); | |
| // The application frames button only needs to be bound if | |
| // there are actually any application frames to look at. | |
| var installApplicationFramesButton = function() { | |
| applicationFramesButton.onclick = function() { | |
| allFramesButton.className = ""; | |
| applicationFramesButton.className = "selected"; | |
| for(var i = 0; i < allFrames.length; i++) { | |
| if(allFrames[i].attributes["data-context"].value == "application") { | |
| allFrames[i].style.display = "block"; | |
| } else { | |
| allFrames[i].style.display = "none"; | |
| } | |
| } | |
| return false; | |
| }; | |
| applicationFramesButtonIsInstalled = true; | |
| } | |
| allFramesButton.onclick = function() { | |
| if(applicationFramesButtonIsInstalled) { | |
| applicationFramesButton.className = ""; | |
| } | |
| allFramesButton.className = "selected"; | |
| for(var i = 0; i < allFrames.length; i++) { | |
| allFrames[i].style.display = "block"; | |
| } | |
| return false; | |
| }; | |
| // If there are no application frames, select the 'All Frames' | |
| // tab by default. | |
| if(applicationFramesCount > 0) { | |
| installApplicationFramesButton(); | |
| applicationFramesButton.onclick(); | |
| } else { | |
| applicationFramesButton.className = "disabled"; | |
| applicationFramesButton.title = "No application frames available"; | |
| allFramesButton.onclick(); | |
| } | |
| })(); | |
| </script> | |
| <!-- generated by Better Errors in 0.010000944137573242 seconds --> | |
| </body> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment