Class: Dependabot::DependencyFile

Inherits:
Object
  • Object
show all
Defined in:
lib/dependabot/dependency_file.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, content:, directory: "/", type: "file", support_file: false) ⇒ DependencyFile

Returns a new instance of DependencyFile.



9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/dependabot/dependency_file.rb', line 9

def initialize(name:, content:, directory: "/", type: "file",
               support_file: false)
  @name = name
  @content = content
  @directory = clean_directory(directory)
  @support_file = support_file

  # Type is used *very* sparingly. It lets the git_modules updater know that
  # a "file" is actually a submodule, and lets our Go updaters know which
  # file represents the main.go.
  # New use cases should be avoided if at all possible (and use the
  # support_file flag instead)
  @type = type
end

Instance Attribute Details

#contentObject

Returns the value of attribute content.



7
8
9
# File 'lib/dependabot/dependency_file.rb', line 7

def content
  @content
end

#directoryObject

Returns the value of attribute directory.



7
8
9
# File 'lib/dependabot/dependency_file.rb', line 7

def directory
  @directory
end

#nameObject

Returns the value of attribute name.



7
8
9
# File 'lib/dependabot/dependency_file.rb', line 7

def name
  @name
end

#support_fileObject

Returns the value of attribute support_file.



7
8
9
# File 'lib/dependabot/dependency_file.rb', line 7

def support_file
  @support_file
end

#typeObject

Returns the value of attribute type.



7
8
9
# File 'lib/dependabot/dependency_file.rb', line 7

def type
  @type
end

Instance Method Details

#==(other) ⇒ Object



37
38
39
# File 'lib/dependabot/dependency_file.rb', line 37

def ==(other)
  other.instance_of?(self.class) && to_h == other.to_h
end

#eql?(other) ⇒ Boolean

Returns:

  • (Boolean)


45
46
47
# File 'lib/dependabot/dependency_file.rb', line 45

def eql?(other)
  self.==(other)
end

#hashObject



41
42
43
# File 'lib/dependabot/dependency_file.rb', line 41

def hash
  to_h.hash
end

#pathObject



33
34
35
# File 'lib/dependabot/dependency_file.rb', line 33

def path
  Pathname.new(File.join(directory, name)).cleanpath.to_path
end

#support_file?Boolean

Returns:

  • (Boolean)


49
50
51
# File 'lib/dependabot/dependency_file.rb', line 49

def support_file?
  @support_file
end

#to_hObject



24
25
26
27
28
29
30
31
# File 'lib/dependabot/dependency_file.rb', line 24

def to_h
  {
    "name" => name,
    "content" => content,
    "directory" => directory,
    "type" => type
  }
end