#include "stack.h" #include "structs.h" PositionStack ps_new(void) { PositionStack ps; ps.top = 0; return ps; } int ps_push(PositionStack ps, Position pos) { ps.arr[ps.top] = pos; ps.top += 1; } Position ps_pop(PositionStack ps) { ps.top -= 1; return ps.arr[ps.top]; } Position ps_peek(PositionStack ps) { return ps.arr[ps.top - 1]; }