Surface Shader If Condition W = :( A == B ? V syntax

i found some strange syntax in a surface shader, but i can’t find any documentation on what it is.

can’t i just write if… else in a void surf()?

what is :(a==b ? syntax and where can i learn it?

     float4 resultCol1 = 
     Alti >= _TopLimit ? tex2D(_TexTop, IN.uv_TexTop)

The syntax in your description doesn’t match the syntax in your code snippet, but it sounds like you’re describing a ternary operator.