Annotation of rpl/modules/sets/types.rplc, revision 1.1

1.1     ! bertrand    1: #define TYPE_DECLARATION
        !             2: #include "src/rplexternals.h"
        !             3: #include "sets.h"
        !             4: 
        !             5: // Les objets de type ensemble sont délimités par ([ ]) et ne contiennent
        !             6: // que des entiers.
        !             7: 
        !             8: declareTypeExtension(parse)
        !             9:    if ((*rptr) == '(')
        !            10:    {
        !            11:        rptr++;
        !            12: 
        !            13:        if ((*rptr) == '[')
        !            14:        {
        !            15:            rptr++;
        !            16:            while((*rptr) != 0)
        !            17:            {
        !            18:                switch (*rptr)
        !            19:                {
        !            20:                    case '0':
        !            21:                    case '1':
        !            22:                    case '2':
        !            23:                    case '3':
        !            24:                    case '4':
        !            25:                    case '5':
        !            26:                    case '6':
        !            27:                    case '7':
        !            28:                    case '8':
        !            29:                    case '9':
        !            30:                    case ' ':
        !            31:                    {
        !            32:                        break;
        !            33:                    }
        !            34: 
        !            35:                    case ']':
        !            36:                    {
        !            37:                        rptr++;
        !            38: 
        !            39:                        if ((*rptr) == ')')
        !            40:                        {
        !            41:                            rptr++;
        !            42:                            return(sizeOfParse);
        !            43:                        }
        !            44:                        else
        !            45:                        {
        !            46:                            parseError;
        !            47:                        }
        !            48:                    }
        !            49: 
        !            50:                    default:
        !            51:                    {
        !            52:                        parseError;
        !            53:                    }
        !            54:                }
        !            55: 
        !            56:                rptr++;
        !            57:            }
        !            58:        }
        !            59:    }
        !            60: endTypeExtension
        !            61: 
        !            62: declareTypeExtension(new)
        !            63: endTypeExtension
        !            64: 
        !            65: declareTypeExtension(dup)
        !            66: endTypeExtension
        !            67: 
        !            68: declareTypeExtension(disp)
        !            69: endTypeExtension
        !            70: 
        !            71: declareTypeExtension(drop)
        !            72: endTypeExtension

CVSweb interface <joel.bertrand@systella.fr>