Bitbybit Docs
    Preparing search index...

    Class Logic

    القيم المنطقية والقرارات: مقارنة القيم، وقلب القيم المنطقية، وتحويل قوائم الأرقام إلى قوائم قيم منطقية بالعتبات، وسحب قيم منطقية عشوائية، وبوابة قيمة بحيث تمر فقط عندما يتحقق شرط. دوال العتبات هي الطريقة المعتادة لتقرير أي عناصر النمط تحصل على ميزة وأيها لا.

    Index

    Constructors

    create

    • يمرر قيمة منطقية دون تغيير، بحيث يمكن إعطاء القيمة اسما وإعادة استخدامها.

      مثال: true -> true

      Parameters

      Returns boolean

      القيمة المنطقية نفسها

    • يسحب قائمة قيم منطقية عشوائية، كل منها true باحتمال معطى.

      مثال: length 5 مع trueThreshold 0.7 -> ربما [true, true, false, true, true]

      Parameters

      • inputs: RandomBooleansDto

        عدد القيم المنطقية المراد سحبها واحتمال true

      Returns boolean[]

      القيم المنطقية العشوائية

      const flags = bitbybit.logic.randomBooleans({ length: 5, trueThreshold: 0.7 });
      
    • يحول أرقاما إلى قيم منطقية بمزج عشوائي بين عتبتين.

      تحت العتبة الأولى يكون الرقم true دائما، وفوق الثانية false دائما؛ وبينهما ينخفض احتمال true بخطوات من إحداهما إلى الأخرى، فيتلاشى النمط بدلا من التبديل الحاد. مثال: [0.1, 0.9] بالعتبتين 0.3 و 0.7 -> [true, false]

      Parameters

      Returns boolean[]

      قيمة منطقية واحدة لكل رقم

      const fade = bitbybit.logic.twoThresholdRandomGradient({
      numbers: [0.1, 0.4, 0.6, 0.9],
      thresholdTotalTrue: 0.3,
      thresholdTotalFalse: 0.7,
      nrLevels: 10,
      });
    • يحول أرقاما إلى قيم منطقية: true تحت العتبة، و false عندها أو فوقها.

      inverse يقلب كل نتيجة. مثال: [0.3, 0.7, 0.5] بعتبة 0.6 -> [true, false, true]

      Parameters

      Returns boolean[]

      قيمة منطقية واحدة لكل رقم

      const below = bitbybit.logic.thresholdBooleanList({ numbers: [0.3, 0.7, 0.5], threshold: 0.6, inverse: false });
      
    • يحول أرقاما إلى قيم منطقية: true عندما يقع الرقم داخل أي من النطاقات المعطاة، و false خلاف ذلك.

      كل نطاق هو [min, max] مع شمول الطرفين؛ inverse يقلب كل نتيجة. مثال: [0.2, 0.5, 0.8] بالنطاقات [[0.3, 0.6], [0.7, 0.9]] -> [false, true, true]

      Parameters

      Returns boolean[]

      قيمة منطقية واحدة لكل رقم

      const inside = bitbybit.logic.thresholdGapsBooleanList({
      numbers: [0.2, 0.5, 0.8],
      gapThresholds: [[0.3, 0.6], [0.7, 0.9]],
      inverse: false,
      });

    edit

    • يقلب قيمة منطقية: true تصبح false و false تصبح true.

      مثال: true -> false

      Parameters

      Returns boolean

      القيمة المنطقية المعاكسة

    • يقلب كل قيمة منطقية في قائمة.

      مثال: [true, false, true] -> [false, true, false]

      Parameters

      Returns boolean[]

      القيم المنطقية المقلوبة، بالترتيب نفسه

    operations

    • يقارن قيمتين بعامل: أصغر، أو أصغر أو يساوي، أو أكبر، أو أكبر أو يساوي، أو يساوي أو لا يساوي، بالصيغة المتساهلة (==) أو الصارمة (===).

      مثال: 5 أكبر من 3 -> true؛ 'hello' يساوي بصرامة 'world' -> false

      Type Parameters

      • T

      Parameters

      Returns boolean

      نتيجة المقارنة

      const bigger = bitbybit.logic.compare({ first: 5, second: 3, operator: Bit.Inputs.Logic.BooleanOperatorsEnum.greater });
      
    • يمرر قيمة عندما تكون القيمة المنطقية true ويعطي undefined عندما تكون false.

      مثال: 42 مع true -> 42؛ 42 مع false -> undefined

      Type Parameters

      • T

      Parameters

      • inputs: ValueGateDto<T>

        القيمة والقيمة المنطقية التي تفتح البوابة

      Returns T

      القيمة، أو undefined عندما تكون البوابة مغلقة

      const maybe = bitbybit.logic.valueGate({ value: 42, boolean: true });
      
    • يختار الأولى من قيمتين تكون معرّفة، فتعمل الثانية كقيمة احتياطية.

      مثال: 42 و 10 -> 42؛ undefined و 10 -> 10

      Type Parameters

      • T
      • U

      Parameters

      • inputs: TwoValueGateDto<T, U>

        القيمة المفضلة والقيمة البديلة

      Returns T | U

      أول قيمة معرّفة، أو undefined عندما تكون كلتاهما مفقودتين

      const chosen = bitbybit.logic.firstDefinedValueGate({ value1: undefined, value2: 10 });