模块 aya.base
程序包 org.aya.resolve

记录类 ResolveInfo

java.lang.Object
java.lang.Record
org.aya.resolve.ResolveInfo
记录组件:
primFactory - all primitives shared among all modules in a compilation task.
shapeFactory - CodeShape that are discovered during tycking this module, modified by tycker.
opSet - binary operators.
opRename - rename-as-operators, only stores names that renamed in current module (and re-exported ops).
imports - modules imported using `import` command.
reExports - modules re-exported using `public open` command.
depGraph - dependency graph of definitions. for each (v, successors) in the graph, `successors` should be tycked first.

public record ResolveInfo(@NotNull ModuleContext thisModule, @NotNull kala.collection.immutable.ImmutableSeq<Stmt> program, PrimDef.Factory primFactory, AyaShape.Factory shapeFactory, @NotNull AyaBinOpSet opSet, @NotNull kala.collection.mutable.MutableMap<DefVar<?,?>,kala.tuple.Tuple2<ResolveInfo.RenamedOpDecl,BindBlock>> opRename, @NotNull kala.collection.mutable.MutableMap<kala.collection.immutable.ImmutableSeq<String>,ResolveInfo> imports, @NotNull kala.collection.mutable.MutableMap<kala.collection.immutable.ImmutableSeq<String>,UseHide> reExports, @NotNull org.aya.util.terck.MutableGraph<TyckOrder> depGraph) extends Record
  • 构造器详细资料

    • ResolveInfo

      public ResolveInfo(@NotNull PrimDef.Factory primFactory, @NotNull @NotNull ModuleContext thisModule, @NotNull @NotNull kala.collection.immutable.ImmutableSeq<Stmt> thisProgram, @NotNull @NotNull AyaBinOpSet opSet)
    • ResolveInfo

      public ResolveInfo(@NotNull @NotNull ModuleContext thisModule, @NotNull @NotNull kala.collection.immutable.ImmutableSeq<Stmt> program, @NotNull PrimDef.Factory primFactory, @NotNull AyaShape.Factory shapeFactory, @NotNull @NotNull AyaBinOpSet opSet, @NotNull @NotNull kala.collection.mutable.MutableMap<DefVar<?,?>,kala.tuple.Tuple2<ResolveInfo.RenamedOpDecl,BindBlock>> opRename, @NotNull @NotNull kala.collection.mutable.MutableMap<kala.collection.immutable.ImmutableSeq<String>,ResolveInfo> imports, @NotNull @NotNull kala.collection.mutable.MutableMap<kala.collection.immutable.ImmutableSeq<String>,UseHide> reExports, @NotNull @NotNull org.aya.util.terck.MutableGraph<TyckOrder> depGraph)
      创建 ResolveInfo 记录类的实例。
      参数:
      thisModule - thisModule 记录组件的值
      program - program 记录组件的值
      primFactory - primFactory 记录组件的值
      shapeFactory - shapeFactory 记录组件的值
      opSet - opSet 记录组件的值
      opRename - opRename 记录组件的值
      imports - imports 记录组件的值
      reExports - reExports 记录组件的值
      depGraph - depGraph 记录组件的值
  • 方法详细资料

    • renameOp

      public void renameOp(@NotNull @NotNull DefVar<?,?> defVar, @NotNull @NotNull ResolveInfo.RenamedOpDecl renamed, @NotNull @NotNull BindBlock bind)
    • open

      public void open(@NotNull @NotNull ResolveInfo other, @NotNull @NotNull org.aya.util.error.SourcePos sourcePos, @NotNull Stmt.Accessibility acc)
    • toString

      public final String toString()
      返回此记录类的字符串表示形式。此表示形式包含类的名称,后跟每个记录组件的名称和值。
      指定者:
      toString 在类中 Record
      返回:
      此对象的字符串表示形式
    • hashCode

      public final int hashCode()
      返回此对象的哈希代码值。此值派生自每个记录组件的哈希代码。
      指定者:
      hashCode 在类中 Record
      返回:
      此对象的哈希代码值
    • equals

      public final boolean equals(Object o)
      指示某个其他对象是否“等于”此对象。如果两个对象属于同一个类,而且所有记录组件都相等,则这两个对象相等。 此记录类中的所有组件都使用 Objects::equals(Object,Object) 进行比较。
      指定者:
      equals 在类中 Record
      参数:
      o - 要与之进行比较的对象
      返回:
      如果此对象与 o 参数相同,则为 true;否则为 false
    • thisModule

      @NotNull public @NotNull ModuleContext thisModule()
      返回 thisModule 记录组件的值。
      返回:
      thisModule 记录组件的值
    • program

      @NotNull public @NotNull kala.collection.immutable.ImmutableSeq<Stmt> program()
      返回 program 记录组件的值。
      返回:
      program 记录组件的值
    • primFactory

      @NotNull public PrimDef.Factory primFactory()
      返回 primFactory 记录组件的值。
      返回:
      primFactory 记录组件的值
    • shapeFactory

      @NotNull public AyaShape.Factory shapeFactory()
      返回 shapeFactory 记录组件的值。
      返回:
      shapeFactory 记录组件的值
    • opSet

      @NotNull public @NotNull AyaBinOpSet opSet()
      返回 opSet 记录组件的值。
      返回:
      opSet 记录组件的值
    • opRename

      @NotNull public @NotNull kala.collection.mutable.MutableMap<DefVar<?,?>,kala.tuple.Tuple2<ResolveInfo.RenamedOpDecl,BindBlock>> opRename()
      返回 opRename 记录组件的值。
      返回:
      opRename 记录组件的值
    • imports

      @NotNull public @NotNull kala.collection.mutable.MutableMap<kala.collection.immutable.ImmutableSeq<String>,ResolveInfo> imports()
      返回 imports 记录组件的值。
      返回:
      imports 记录组件的值
    • reExports

      @NotNull public @NotNull kala.collection.mutable.MutableMap<kala.collection.immutable.ImmutableSeq<String>,UseHide> reExports()
      返回 reExports 记录组件的值。
      返回:
      reExports 记录组件的值
    • depGraph

      @NotNull public @NotNull org.aya.util.terck.MutableGraph<TyckOrder> depGraph()
      返回 depGraph 记录组件的值。
      返回:
      depGraph 记录组件的值