Module aya.base

Class PrimFactory

java.lang.Object
org.aya.primitive.PrimFactory

public class PrimFactory extends Object
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final record 
     
    static interface 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final @NotNull PrimFactory.PrimSeed
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    @NotNull kala.control.Option<kala.collection.immutable.ImmutableSeq<@NotNull org.aya.syntax.core.def.PrimDef.ID>>
    checkDependency(@NotNull org.aya.syntax.core.def.PrimDef.ID name)
     
    void
     
    void
    clear(@NotNull org.aya.syntax.core.def.PrimDef.ID name)
     
    @NotNull org.aya.syntax.core.def.PrimDef
    factory(@NotNull org.aya.syntax.core.def.PrimDef.ID name, @NotNull org.aya.syntax.ref.DefVar<org.aya.syntax.core.def.PrimDef,org.aya.syntax.concrete.stmt.decl.PrimDecl> ref)
     
    @NotNull org.aya.syntax.core.term.call.PrimCall
    getCall(@NotNull org.aya.syntax.core.def.PrimDef.ID id)
     
    @NotNull org.aya.syntax.core.term.call.PrimCall
    getCall(@NotNull org.aya.syntax.core.def.PrimDef.ID id, @NotNull kala.collection.immutable.ImmutableSeq<org.aya.syntax.core.term.Term> args)
     
    @NotNull kala.control.Option<org.aya.syntax.core.def.PrimDef>
    getOption(@NotNull org.aya.syntax.core.def.PrimDef.ID name)
     
    @NotNull org.aya.syntax.core.def.PrimDef
    getOrCreate(@NotNull org.aya.syntax.core.def.PrimDef.ID name, @NotNull org.aya.syntax.ref.DefVar<org.aya.syntax.core.def.PrimDef,org.aya.syntax.concrete.stmt.decl.PrimDecl> ref)
     
    boolean
    have(@NotNull org.aya.syntax.core.def.PrimDef.ID name)
     
    boolean
    whether redefinition should be treated as error
    @NotNull org.aya.syntax.core.term.Term
    unfold(@NotNull org.aya.syntax.core.term.call.PrimCall primCall, @NotNull TyckState state)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • PrimFactory

      public PrimFactory()
  • Method Details

    • factory

      @NotNull public @NotNull org.aya.syntax.core.def.PrimDef factory(@NotNull @NotNull org.aya.syntax.core.def.PrimDef.ID name, @NotNull @NotNull org.aya.syntax.ref.DefVar<org.aya.syntax.core.def.PrimDef,org.aya.syntax.concrete.stmt.decl.PrimDecl> ref)
    • getCall

      @NotNull public @NotNull org.aya.syntax.core.term.call.PrimCall getCall(@NotNull @NotNull org.aya.syntax.core.def.PrimDef.ID id, @NotNull @NotNull kala.collection.immutable.ImmutableSeq<org.aya.syntax.core.term.Term> args)
    • getCall

      @NotNull public @NotNull org.aya.syntax.core.term.call.PrimCall getCall(@NotNull @NotNull org.aya.syntax.core.def.PrimDef.ID id)
    • getOption

      @NotNull public @NotNull kala.control.Option<org.aya.syntax.core.def.PrimDef> getOption(@NotNull @NotNull org.aya.syntax.core.def.PrimDef.ID name)
    • have

      public boolean have(@NotNull @NotNull org.aya.syntax.core.def.PrimDef.ID name)
    • suppressRedefinition

      public boolean suppressRedefinition()
      whether redefinition should be treated as error
    • getOrCreate

      @NotNull public @NotNull org.aya.syntax.core.def.PrimDef getOrCreate(@NotNull @NotNull org.aya.syntax.core.def.PrimDef.ID name, @NotNull @NotNull org.aya.syntax.ref.DefVar<org.aya.syntax.core.def.PrimDef,org.aya.syntax.concrete.stmt.decl.PrimDecl> ref)
    • checkDependency

      @NotNull public @NotNull kala.control.Option<kala.collection.immutable.ImmutableSeq<@NotNull org.aya.syntax.core.def.PrimDef.ID>> checkDependency(@NotNull @NotNull org.aya.syntax.core.def.PrimDef.ID name)
    • unfold

      @NotNull public @NotNull org.aya.syntax.core.term.Term unfold(@NotNull @NotNull org.aya.syntax.core.term.call.PrimCall primCall, @NotNull @NotNull TyckState state)
    • clear

      public void clear()
    • clear

      public void clear(@NotNull @NotNull org.aya.syntax.core.def.PrimDef.ID name)