模块 aya.base

记录类 ExprResolver

java.lang.Object
java.lang.Record
org.aya.resolve.visitor.ExprResolver
记录组件:
allowedGeneralizes - will be filled with generalized vars if allowGeneralized, and represents the allowed generalized level vars otherwise

public record ExprResolver(@NotNull ExprResolver.Options options, @NotNull kala.collection.mutable.MutableMap<GeneralizedVar,Expr.Param> allowedGeneralizes, @NotNull kala.collection.mutable.MutableList<TyckOrder> reference, @NotNull kala.collection.mutable.MutableStack<org.aya.resolve.visitor.ExprResolver.Where> where, @Nullable Consumer<TyckUnit> parentAdd) extends Record
Resolves bindings.
另请参阅:
Implementation Requirements:
allowedGeneralizes must be linked map
  • 字段详细资料

  • 构造器详细资料

    • ExprResolver

      public ExprResolver(@NotNull @NotNull ExprResolver.Options options)
    • ExprResolver

      public ExprResolver(@NotNull @NotNull ExprResolver.Options options, @NotNull @NotNull kala.collection.mutable.MutableMap<GeneralizedVar,Expr.Param> allowedGeneralizes, @NotNull @NotNull kala.collection.mutable.MutableList<TyckOrder> reference, @NotNull @NotNull kala.collection.mutable.MutableStack<org.aya.resolve.visitor.ExprResolver.Where> where, @Nullable @Nullable Consumer<TyckUnit> parentAdd)
      创建 ExprResolver 记录类的实例。
      参数:
      options - options 记录组件的值
      allowedGeneralizes - allowedGeneralizes 记录组件的值
      reference - reference 记录组件的值
      where - where 记录组件的值
      parentAdd - parentAdd 记录组件的值
  • 方法详细资料

    • resolve

      @NotNull public @NotNull Expr resolve(@NotNull @NotNull Expr expr, @NotNull @NotNull Context ctx)
    • enterHead

      public void enterHead()
    • enterBody

      public void enterBody()
    • member

      @NotNull public @NotNull ExprResolver member(@NotNull @NotNull TyckUnit decl)
    • body

      @NotNull public @NotNull ExprResolver body()
    • resolveParams

      @Contract(pure=true) @NotNull public @NotNull kala.tuple.Tuple2<kala.collection.SeqView<Expr.Param>,Context> resolveParams(@NotNull @NotNull kala.collection.SeqLike<Expr.Param> params, Context ctx)
    • 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
    • options

      @NotNull public @NotNull ExprResolver.Options options()
      返回 options 记录组件的值。
      返回:
      options 记录组件的值
    • allowedGeneralizes

      @NotNull public @NotNull kala.collection.mutable.MutableMap<GeneralizedVar,Expr.Param> allowedGeneralizes()
      返回 allowedGeneralizes 记录组件的值。
      返回:
      allowedGeneralizes 记录组件的值
    • reference

      @NotNull public @NotNull kala.collection.mutable.MutableList<TyckOrder> reference()
      返回 reference 记录组件的值。
      返回:
      reference 记录组件的值
    • where

      @NotNull public @NotNull kala.collection.mutable.MutableStack<org.aya.resolve.visitor.ExprResolver.Where> where()
      返回 where 记录组件的值。
      返回:
      where 记录组件的值
    • parentAdd

      @Nullable public @Nullable Consumer<TyckUnit> parentAdd()
      返回 parentAdd 记录组件的值。
      返回:
      parentAdd 记录组件的值