#include <iostream>
#include "uCalc.h"

using namespace std;
using namespace uCalcSoftware;

#define tf(IsTrue) ((IsTrue) ? "True" : "False")

int main() {
   uCalc uc;
   auto t = uc.NewTransformer();
   auto rule = t.FromTo("A", "B");

   // Chain multiple Set... methods for a clean configuration
   rule.SetCaseSensitive(true)
   .SetWhitespaceSensitive(false)
   .SetQuoteSensitive(false);

   // Verify the properties were set using their corresponding getters
   cout << "Case Sensitive: " << tf(rule.CaseSensitive()) << endl;
   cout << "Whitespace Sensitive: " << tf(rule.WhitespaceSensitive()) << endl;
   cout << "Quote Sensitive: " << tf(rule.QuoteSensitive()) << endl;
}