#!/usr/bin/env python# Copyright 2016-2019 Biomedical Imaging Group Rotterdam, Departments of# Medical Informatics and Radiology, Erasmus MC, Rotterdam, The Netherlands## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the License.# You may obtain a copy of the License at## http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing, software# distributed under the License is distributed on an "AS IS" BASIS,# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.# See the License for the specific language governing permissions and# limitations under the License.
[docs]classswitch(object):""" Object to mimic the MATLAB switch - case statement."""
[docs]def__iter__(self):"""Return the match method once, then stop"""yieldself.matchraiseStopIteration
[docs]defmatch(self,*args):"""Indicate whether or not to enter a case suite"""ifself.fallornotargs:returnTrueelifself.valueinargs:self.fall=TruereturnTrueelse:returnFalse