Goose  Artifact [a642e97552]

Artifact a642e9755220394845f89ec08dc1bc0c3f85219d001e4544577b4cfc11202835:

  • File bs/sema/hole.h — part of check-in [acc4df2877] at 2018-11-25 21:41:11 on branch trunk — sema: added a class for named holes and its conversion from/to an ir expression. (user: achavasse size: 398)

#ifndef EMPATHY_SEMA_HOLE_H
#define EMPATHY_SEMA_HOLE_H

namespace empathy::sema
{
    class Hole
    {
        public:
            using Name = pair< StringId, uint32_t >;

            Hole( const StringId& id, uint32_t namespaceIndex = 0 );

            Term toIRExpr();
            static optional< Hole > FromIRExpr( const Term& t );

        private:
            Name m_name;
    };
}

#endif