class Yoda::Typing::LexicalScope

Attributes

ancestor_paths[R]

@return [Array<Path>]

namespace[R]

@return [Store::Objects::Base]

Public Class Methods

new(namespace, ancestor_paths) click to toggle source

@param namespace [Store::Objects::Base] @param ancestor_names [Array<Path>]

# File lib/yoda/typing/lexical_scope.rb, line 12
def initialize(namespace, ancestor_paths)
  @namespace = namespace
  @ancestor_paths = ancestor_paths
end

Public Instance Methods

find_constant(registry, constant_name) click to toggle source

@param registry [Store::Registry] @param constant_name [String] @return [Store::Objects::Base, nil]

# File lib/yoda/typing/lexical_scope.rb, line 20
def find_constant(registry, constant_name)
  scoped_path = Model::ScopedPath.new(ancestor_paths, constant_name)
  Store::Query::FindConstant.new(registry).find(scoped_path)
end