lib/codependency/graph.rb in codependency-2.1.0 vs lib/codependency/graph.rb in codependency-2.2.0
- old
+ new
@@ -3,28 +3,29 @@
module Codependency
class Graph < Hash
##
# Add the given file to this graph. Creates a new entry in the
- # graph, the key of which is the expanded path to this file and
- # the value is the array of expanded paths to its dependencies.
+ # graph, the key of which is the relative path to this file and
+ # the value is the array of relative paths to its dependencies.
# Any dependent files will also be recursively added to this
# graph.
def require( string )
- file = File.expand_path string
+ root = Pathname.getwd
+ file = Pathname( string ).expand_path.relative_path_from( root ).to_path
self[ file ] ||= parser.parse( file ).map do |short|
- path[ short ].to_path
+ path[ short ].relative_path_from( root ).to_path
end
self[ file ].each { |f| self.require( f ) unless key?( f ) }
end
alias :<< :require
##
# Returns the sorted list of files as determined by this graph,
# relative to the calling file.
def files
- tsort.map { |file| Pathname( file ) }
+ tsort
end
##
# The path set for this dependency graph.
def path