• bl4kers
    link
    fedilink
    English
    arrow-up
    16
    ·
    1 month ago

    I don’t understand this. Small brained users rise up

    • QuazarOmega@lemy.lol
      link
      fedilink
      arrow-up
      14
      ·
      1 month ago

      On the left you have Elvis Presley, while on the right there’s the so-called Elvis operator

          • The Cuuuuube@beehaw.org
            link
            fedilink
            English
            arrow-up
            4
            ·
            30 days ago

            gotacha. i’ve only ever heard them called ternaries. maybe i’m old. maybe i’m too young. definitely one of the two

            • QuazarOmega@lemy.lol
              link
              fedilink
              arrow-up
              8
              ·
              30 days ago

              It specifically refers to this shorthand ?: that works like this:

              $value = $thing_that_could_be_truthy ?: 'fallback value';
              
              # same as
              
              $value = $thing_that_could_be_truthy ? $thing_that_could_be_truthy : 'fallback value';
              

              The condition is also the value if it is truthy

        • dev_null
          link
          fedilink
          arrow-up
          3
          ·
          edit-2
          28 days ago

          It’s a shorthand for writing this:

          variable = if (input != null) input else default
          

          This is equivalent:

          variable = input ?: default
          

          The answers confusing it with the ternary operator are wrong.

        • dev_null
          link
          fedilink
          arrow-up
          3
          ·
          edit-2
          28 days ago

          Because it’s not one. Ternary operator is A ? B : C, Elvis operator is A ?: B. The same two characters are involved, but both the syntax and effect is different.

            • dev_null
              link
              fedilink
              arrow-up
              4
              ·
              27 days ago

              It’s a shorthand for writing this:

              variable = if (input != null) input else default
              

              This is equivalent:

              variable = input ?: default