001package gudusoft.gsqlparser.lineage2.contract;
002
003/**
004 * CASE/IIF branch marker on an edge (lineage2-contract.md ยง4, D-12).
005 * The JSON values are lowercase ({@code "condition"} / {@code "value"});
006 * use {@link #jsonValue()} when serializing.
007 *
008 * <p>Internal API: not part of the public gsqlparser surface.
009 */
010public enum CaseBranch {
011    CONDITION("condition"),
012    VALUE("value");
013
014    private final String jsonValue;
015
016    CaseBranch(String jsonValue) {
017        this.jsonValue = jsonValue;
018    }
019
020    /** The exact lowercase string emitted in contract JSON. */
021    public String jsonValue() {
022        return jsonValue;
023    }
024}