compactp 0.1.0-beta.1

A production-grade parser frontend for the Compact language (Midnight Network)
pragma language_version >= 0.15.0;
include "Counter";
import Foo;
export { foo, bar };

type Hash = Bytes<32>;
export type Word = Uint<64>;

ledger count: Field;
sealed ledger secret: Bytes<32>;

constructor() {}

circuit add(x: Field, y: Field): Field {
  return x + y;
}

circuit declaration_only(x: Field): Field;

witness private$seed(): Bytes<32>;

struct Point {
  x: Field,
  y: Field,
}

enum Mode {
  on,
  off,
}

contract Demo {
  pure circuit get(): Field;
}

module Math<#n> {
  ledger value: Field;
}