class Prism::Relocation::Entry

仓库中的一个条目,当第一次被访问时会懒加载其实际值。

公共类方法

new(repository) 点击切换源代码

使用给定的仓库初始化一个新的条目。

# File prism/relocation.rb, line 24
def initialize(repository)
  @repository = repository
  @values = nil
end

公共实例方法

comments() 点击切换源代码

获取值的开头和结尾的注释。

# File prism/relocation.rb, line 119
def comments
  leading_comments.concat(trailing_comments)
end
end_character_column() 点击切换源代码

获取值的结束字符列。

# File prism/relocation.rb, line 92
def end_character_column
  fetch_value(:end_character_column)
end
end_character_offset() 点击切换源代码

获取值的结束字符偏移量。

# File prism/relocation.rb, line 60
def end_character_offset
  fetch_value(:end_character_offset)
end
end_code_units_column() 点击切换源代码

获取值的结束代码单元列,基于仓库配置的编码。

# File prism/relocation.rb, line 104
def end_code_units_column
  fetch_value(:end_code_units_column)
end
end_code_units_offset() 点击切换源代码

获取值的结束代码单元偏移量,基于仓库配置的编码。

# File prism/relocation.rb, line 72
def end_code_units_offset
  fetch_value(:end_code_units_offset)
end
end_column() 点击切换源代码

获取值的结束字节列。

# File prism/relocation.rb, line 82
def end_column
  fetch_value(:end_column)
end
end_line() 点击切换源代码

获取值的结束行。

# File prism/relocation.rb, line 40
def end_line
  fetch_value(:end_line)
end
end_offset() 点击切换源代码

获取值的结束字节偏移量。

# File prism/relocation.rb, line 50
def end_offset
  fetch_value(:end_offset)
end
filepath() 点击切换源代码

获取值的文件路径。

# File prism/relocation.rb, line 30
def filepath
  fetch_value(:filepath)
end
leading_comments() 点击切换源代码

获取值的开头注释。

# File prism/relocation.rb, line 109
def leading_comments
  fetch_value(:leading_comments)
end
start_character_column() 点击切换源代码

获取值的开始字符列。

# File prism/relocation.rb, line 87
def start_character_column
  fetch_value(:start_character_column)
end
start_character_offset() 点击切换源代码

获取值的开始字符偏移量。

# File prism/relocation.rb, line 55
def start_character_offset
  fetch_value(:start_character_offset)
end
start_code_units_column() 点击切换源代码

获取值的开始代码单元列,基于仓库配置的编码。

# File prism/relocation.rb, line 98
def start_code_units_column
  fetch_value(:start_code_units_column)
end
start_code_units_offset() 点击切换源代码

获取值的开始代码单元偏移量,基于仓库配置的编码。

# File prism/relocation.rb, line 66
def start_code_units_offset
  fetch_value(:start_code_units_offset)
end
start_column() 点击切换源代码

获取值的开始字节列。

# File prism/relocation.rb, line 77
def start_column
  fetch_value(:start_column)
end
start_line() 点击切换源代码

获取值的开始行。

# File prism/relocation.rb, line 35
def start_line
  fetch_value(:start_line)
end
start_offset() 点击切换源代码

获取值的开始字节偏移量。

# File prism/relocation.rb, line 45
def start_offset
  fetch_value(:start_offset)
end
trailing_comments() 点击切换源代码

获取值的结尾注释。

# File prism/relocation.rb, line 114
def trailing_comments
  fetch_value(:trailing_comments)
end

私有实例方法

fetch_value(name) 点击切换源代码

从条目中获取一个值,如果值不存在则抛出错误。

# File prism/relocation.rb, line 134
def fetch_value(name)
  values.fetch(name) do
    raise MissingValueError, "No value for #{name}, make sure the " \
      "repository has been properly configured"
  end
end
values() 点击切换源代码

返回仓库中的值,如果需要则将其具体化。

# File prism/relocation.rb, line 142
def values
  @values || (@repository.reify!; @values)
end