org.aya.util.binop.OpDecl Maven / Gradle / Ivy
// Copyright (c) 2020-2024 Tesla (Yinsen) Zhang.
// Use of this source code is governed by the MIT license that can be found in the LICENSE.md file.
package org.aya.util.binop;
import org.jetbrains.annotations.Contract;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.io.Serializable;
public interface OpDecl {
enum BindPred { Tighter, Looser }
@Contract(pure = true) @Nullable OpInfo opInfo();
record OpInfo(@NotNull String name, @NotNull Assoc assoc) implements Serializable { }
@NotNull OpDecl APPLICATION = () -> new OpInfo("application", Assoc.InfixL);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy