SDL Game Controller proper way to read trigger button

The SDL Game Controller API supports two shoulder triggers in addition to the two shoulder buttons. They are considered axes, not buttons.

On some controllers, like Nintendo Switch or bitdo, the shoulder triggers are implemented as digital buttons, not analog axes. In the game controller config, this is reflected by a mapping to :b10 or some such instead of :a6 for example.

What is a portable way to read such buttons? Should I check for an axis value not equal to 0? It seems to work that way, but wouldn’t an actual analog trigger cause erroneous readings then? Is there a runtime function to check whether the current platform uses true analog triggers, or uses digital ones?