• Michael Paquier's avatar
    Add new flag to format_type_extended() to get NULL for undefined type · 1185c782
    Michael Paquier authored
    If a type scanned is undefined, type format routines have two behaviors
    depending on if FORMAT_TYPE_ALLOW_INVALID is used by the caller or not:
    - Issue a cache lookup error
    - Return an undefined type name "???", "???[]" or "-"
    
    The current interface is not really helpful for callers willing to
    format properly a type name, but still make sure that the type is
    defined as there could be types matching the strings generated when
    looking for an undefined type, even if that should not be a problem in
    practice.  In order to counter that, add a new flag called
    FORMAT_TYPE_INVALID_AS_NULL that returns a NULL result instead of "???
    or "-" which does not generate an error.  This flag will be used in a
    follow-up patch improving the set of SQL functions showing information
    for object addresses when it comes to undefined objects.
    
    Author: Michael Paquier
    Reviewed-by: Aleksander Alekseev, Dmitry Dolgov, Daniel Gustafsson,
    Álvaro Herrera
    Discussion: https://postgr.es/m/CAB7nPqSZxrSmdHK-rny7z8mi=EAFXJ5J-0RbzDw6aus=wB5azQ@mail.gmail.com
    1185c782
builtins.h 4.34 KB