示例#1
0
        private bool CheckLHSType(TypeNode l, TypeNode r)
        {
            if (l.GetType() != r.GetType())
            {
                return(false);
            }

            switch (l)
            {
            case SimpleTypeNode st when st.PrimitiveType != r.PrimitiveType:
            case ArrayTypeNode at when r.PrimitiveType != PrimitiveType.Array:
                return(false);

            case ArrayTypeNode at when at.SubType != ((ArrayTypeNode)r).SubType:
                return(false);

            default:
                return(true);
            }
        }