diff options
Diffstat (limited to 'doc/app/Glsamaker/Diff.html')
-rw-r--r-- | doc/app/Glsamaker/Diff.html | 338 |
1 files changed, 338 insertions, 0 deletions
diff --git a/doc/app/Glsamaker/Diff.html b/doc/app/Glsamaker/Diff.html new file mode 100644 index 0000000..1e3fd06 --- /dev/null +++ b/doc/app/Glsamaker/Diff.html @@ -0,0 +1,338 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> + + <title>Module: Glsamaker::Diff</title> + + <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" /> + + <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script> + <script src="../js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script> + <script src="../js/quicksearch.js" type="text/javascript" charset="utf-8"></script> + <script src="../js/darkfish.js" type="text/javascript" charset="utf-8"></script> + +</head> +<body id="top" class="module"> + + <div id="metadata"> + <div id="home-metadata"> + <div id="home-section" class="section"> + <h3 class="section-header"> + <a href="../index.html">Home</a> + <a href="../index.html#classes">Classes</a> + <a href="../index.html#methods">Methods</a> + </h3> + </div> + </div> + + <div id="file-metadata"> + <div id="file-list-section" class="section"> + <h3 class="section-header">In Files</h3> + <div class="section-body"> + <ul> + + <li><a href="../lib/glsamaker/diff_rb.html?TB_iframe=true&height=550&width=785" + class="thickbox" title="lib/glsamaker/diff.rb">lib/glsamaker/diff.rb</a></li> + + </ul> + </div> + </div> + + + </div> + + <div id="class-metadata"> + + + + + + + + <!-- Method Quickref --> + <div id="method-list-section" class="section"> + <h3 class="section-header">Methods</h3> + <ul class="link-list"> + + <li><a href="#method-i-diff">#diff</a></li> + + </ul> + </div> + + + + </div> + + <div id="project-metadata"> + + + <div id="fileindex-section" class="section project-section"> + <h3 class="section-header">Files</h3> + <ul> + + <li class="file"><a href="../doc/README_FOR_APP.html">README_FOR_APP</a></li> + + </ul> + </div> + + + <div id="classindex-section" class="section project-section"> + <h3 class="section-header">Class/Module Index + <span class="search-toggle"><img src="../images/find.png" + height="16" width="16" alt="[+]" + title="show/hide quicksearch" /></span></h3> + <form action="#" method="get" accept-charset="utf-8" class="initially-hidden"> + <fieldset> + <legend>Quicksearch</legend> + <input type="text" name="quicksearch" value="" + class="quicksearch-field" /> + </fieldset> + </form> + + <ul class="link-list"> + + <li><a href="../Glsamaker.html">Glsamaker</a></li> + + <li><a href="../Glsamaker/Bugs.html">Glsamaker::Bugs</a></li> + + <li><a href="../Glsamaker/Bugs/ArchesMixin.html">Glsamaker::Bugs::ArchesMixin</a></li> + + <li><a href="../Glsamaker/Bugs/Bug.html">Glsamaker::Bugs::Bug</a></li> + + <li><a href="../Glsamaker/Bugs/BugReadyMixin.html">Glsamaker::Bugs::BugReadyMixin</a></li> + + <li><a href="../Glsamaker/Bugs/Status.html">Glsamaker::Bugs::Status</a></li> + + <li><a href="../Glsamaker/Bugs/StatusMixin.html">Glsamaker::Bugs::StatusMixin</a></li> + + <li><a href="../Glsamaker/Diff.html">Glsamaker::Diff</a></li> + + <li><a href="../Glsamaker/HTTP.html">Glsamaker::HTTP</a></li> + + <li><a href="../Glsamaker/Helper.html">Glsamaker::Helper</a></li> + + <li><a href="../Glsamaker/Mail.html">Glsamaker::Mail</a></li> + + <li><a href="../Glsamaker/Portage.html">Glsamaker::Portage</a></li> + + <li><a href="../Glsamaker/Portage/Description.html">Glsamaker::Portage::Description</a></li> + + <li><a href="../Glsamaker/XML.html">Glsamaker::XML</a></li> + + <li><a href="../Admin.html">Admin</a></li> + + <li><a href="../Admin/IndexController.html">Admin::IndexController</a></li> + + <li><a href="../Admin/IndexHelper.html">Admin::IndexHelper</a></li> + + <li><a href="../Admin/TemplatesController.html">Admin::TemplatesController</a></li> + + <li><a href="../Admin/TemplatesHelper.html">Admin::TemplatesHelper</a></li> + + <li><a href="../Admin/UsersController.html">Admin::UsersController</a></li> + + <li><a href="../Admin/UsersHelper.html">Admin::UsersHelper</a></li> + + <li><a href="../Bugzilla.html">Bugzilla</a></li> + + <li><a href="../Bugzilla/Bug.html">Bugzilla::Bug</a></li> + + <li><a href="../Bugzilla/Bugzilla.html">Bugzilla::Bugzilla</a></li> + + <li><a href="../Bugzilla/Bugzilla/Bugzilla.html">Bugzilla::Bugzilla::Bugzilla</a></li> + + <li><a href="../Bugzilla/Bugzilla/Bugzilla/Change.html">Bugzilla::Bugzilla::Bugzilla::Change</a></li> + + <li><a href="../Bugzilla/Comment.html">Bugzilla::Comment</a></li> + + <li><a href="../Bugzilla/History.html">Bugzilla::History</a></li> + + <li><a href="../Comment.html">Comment</a></li> + + <li><a href="../Comment/CommentValidator.html">Comment::CommentValidator</a></li> + + <li><a href="../ApplicationController.html">ApplicationController</a></li> + + <li><a href="../ApplicationHelper.html">ApplicationHelper</a></li> + + <li><a href="../Authentication.html">Authentication</a></li> + + <li><a href="../Authorization.html">Authorization</a></li> + + <li><a href="../Bug.html">Bug</a></li> + + <li><a href="../BugController.html">BugController</a></li> + + <li><a href="../BugHelper.html">BugHelper</a></li> + + <li><a href="../BugsController.html">BugsController</a></li> + + <li><a href="../BugsHelper.html">BugsHelper</a></li> + + <li><a href="../CommentsController.html">CommentsController</a></li> + + <li><a href="../CommentsHelper.html">CommentsHelper</a></li> + + <li><a href="../Cpe.html">Cpe</a></li> + + <li><a href="../Cve.html">Cve</a></li> + + <li><a href="../CveAssignment.html">CveAssignment</a></li> + + <li><a href="../CveChange.html">CveChange</a></li> + + <li><a href="../CveComment.html">CveComment</a></li> + + <li><a href="../CveController.html">CveController</a></li> + + <li><a href="../CveHelper.html">CveHelper</a></li> + + <li><a href="../CveReference.html">CveReference</a></li> + + <li><a href="../GLSAReleaseError.html">GLSAReleaseError</a></li> + + <li><a href="../Glsa.html">Glsa</a></li> + + <li><a href="../GlsaController.html">GlsaController</a></li> + + <li><a href="../GlsaHelper.html">GlsaHelper</a></li> + + <li><a href="../GlsaMailer.html">GlsaMailer</a></li> + + <li><a href="../IndexController.html">IndexController</a></li> + + <li><a href="../IndexHelper.html">IndexHelper</a></li> + + <li><a href="../Package.html">Package</a></li> + + <li><a href="../Reference.html">Reference</a></li> + + <li><a href="../Revision.html">Revision</a></li> + + <li><a href="../SearchController.html">SearchController</a></li> + + <li><a href="../SearchHelper.html">SearchHelper</a></li> + + <li><a href="../String.html">String</a></li> + + <li><a href="../Template.html">Template</a></li> + + <li><a href="../ToolsController.html">ToolsController</a></li> + + <li><a href="../ToolsHelper.html">ToolsHelper</a></li> + + <li><a href="../User.html">User</a></li> + + </ul> + <div id="no-class-search-results" style="display: none;">No matching classes.</div> + </div> + + + </div> + </div> + + <div id="documentation"> + <h1 class="module">Glsamaker::Diff</h1> + + <div id="description" class="description"> + +<p>Module providing diff support</p> + + </div><!-- description --> + + + + + <div id="5Buntitled-5D" class="documentation-section"> + + + + + + + + + <!-- Methods --> + + <div id="public-instance-method-details" class="method-section section"> + <h3 class="section-header">Public Instance Methods</h3> + + + <div id="diff-method" class="method-detail "> + <a name="method-i-diff"></a> + + + <div class="method-heading"> + <span class="method-name">diff</span><span + class="method-args">(str_old, str_new, format = :unified, context_lines = 3)</span> + <span class="method-click-advice">click to toggle source</span> + </div> + + + <div class="method-description"> + + <p>Returns a unified diff for two strings Adapted from the O’Reilly Ruby +Cookbook</p> + + + + <div class="method-source-code" id="diff-source"> +<pre> +<span class="ruby-comment"># File lib/glsamaker/diff.rb, line 23</span> +<span class="ruby-keyword">def</span> <span class="ruby-identifier">diff</span>(<span class="ruby-identifier">str_old</span>, <span class="ruby-identifier">str_new</span>, <span class="ruby-identifier">format</span> = <span class="ruby-value">:unified</span>, <span class="ruby-identifier">context_lines</span> = <span class="ruby-value">3</span>) + <span class="ruby-identifier">str_old</span> = <span class="ruby-identifier">str_old</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\r?\n/</span>).<span class="ruby-identifier">map!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span> <span class="ruby-identifier">l</span>.<span class="ruby-identifier">chomp</span> } + <span class="ruby-identifier">str_new</span> = <span class="ruby-identifier">str_new</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\r?\n/</span>).<span class="ruby-identifier">map!</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span> <span class="ruby-identifier">l</span>.<span class="ruby-identifier">chomp</span> } + + <span class="ruby-identifier">output</span> = <span class="ruby-string">""</span> + <span class="ruby-identifier">diffs</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Diff</span><span class="ruby-operator">::</span><span class="ruby-constant">LCS</span>.<span class="ruby-identifier">diff</span>(<span class="ruby-identifier">str_old</span>, <span class="ruby-identifier">str_new</span>) + <span class="ruby-keyword">return</span> <span class="ruby-identifier">output</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">diffs</span>.<span class="ruby-identifier">empty?</span> + + <span class="ruby-identifier">oldhunk</span> = <span class="ruby-identifier">hunk</span> = <span class="ruby-keyword">nil</span> + <span class="ruby-identifier">file_length_difference</span> = <span class="ruby-value">0</span> + <span class="ruby-identifier">diffs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">piece</span><span class="ruby-operator">|</span> + <span class="ruby-keyword">begin</span> + <span class="ruby-identifier">hunk</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Diff</span><span class="ruby-operator">::</span><span class="ruby-constant">LCS</span><span class="ruby-operator">::</span><span class="ruby-constant">Hunk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">str_old</span>, <span class="ruby-identifier">str_new</span>, <span class="ruby-identifier">piece</span>, <span class="ruby-identifier">context_lines</span>, <span class="ruby-identifier">file_length_difference</span>) + <span class="ruby-keyword">next</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">oldhunk</span> + + <span class="ruby-keyword">if</span> (<span class="ruby-identifier">context_lines</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>) <span class="ruby-keyword">and</span> <span class="ruby-identifier">hunk</span>.<span class="ruby-identifier">overlaps?</span>(<span class="ruby-identifier">oldhunk</span>) + <span class="ruby-identifier">hunk</span>.<span class="ruby-identifier">unshift</span>(<span class="ruby-identifier">oldhunk</span>) + <span class="ruby-keyword">else</span> + <span class="ruby-identifier">output</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">oldhunk</span>.<span class="ruby-identifier">diff</span>(<span class="ruby-identifier">format</span>) + <span class="ruby-keyword">end</span> + <span class="ruby-keyword">ensure</span> + <span class="ruby-identifier">oldhunk</span> = <span class="ruby-identifier">hunk</span> + <span class="ruby-identifier">output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">"\n"</span> + <span class="ruby-keyword">end</span> + <span class="ruby-keyword">end</span> + + <span class="ruby-identifier">output</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">oldhunk</span>.<span class="ruby-identifier">diff</span>(<span class="ruby-identifier">format</span>) <span class="ruby-operator"><<</span> <span class="ruby-string">"\n"</span> +<span class="ruby-keyword">end</span></pre> + </div><!-- diff-source --> + + </div> + + + + + </div><!-- diff-method --> + + + </div><!-- public-instance-method-details --> + + </div><!-- 5Buntitled-5D --> + + + </div><!-- documentation --> + + <div id="validator-badges"> + <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p> + <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish + Rdoc Generator</a> 2</small>.</p> + </div> + +</body> +</html> + |