السلطان
  1. الرئيسية
  2. الأمثلة
  3. البيانات

أنواع بمتغيرات ومطابقتها

data/enums.sn
نوع عملية = | جمع بنوع عدد | ضرب بنوع عدد;

عرف طبق(القيمة: عدد, العملية: عملية): عدد {
    طابق العملية مع
    | عملية.جمع(المقدار) -> { أرجع القيمة + المقدار; }
    | عملية.ضرب(المقدار) -> { أرجع القيمة * المقدار; };
}

عرف الرئيسية(): عدد {
    دع الأولى: عملية = عملية.جمع(1);
    دع الثانية: عملية = عملية.ضرب(2);
    أرجع طبق(طبق(20, الأولى), الثانية);
}

التشغيل

بالمفسر، دون ترجمة:

./build/sultanc run examples/ar/data/enums.sn

أو ترجمه إلى ملف تنفيذي:

./build/sultanc examples/ar/data/enums.sn -o build/example && ./build/example

المصدر على GitHub   كل الأمثلة