private IEnumerable <Variable> AvailableLinearLocalVars(Absy absy) { if (absy is Implementation impl) { return(FilterInParams((MapAbsy(impl) as Implementation).InParams)); } if (absy is Procedure proc) { return(FilterInParams((MapAbsy(proc) as Procedure).InParams)); } return(linearTypeChecker.AvailableLinearVars(MapAbsy(absy)).Where(v => !(v is GlobalVariable) && civlTypeChecker.LocalVariableLayerRange(v).Contains(layerNum))); }
private IEnumerable <Variable> AvailableLinearLocalVars(Absy absy) { if (absy is Implementation impl) { return(FilterInParams(absyMap.OriginalOrInput(impl).InParams)); } if (absy is Procedure proc) { return(FilterInParams(absyMap.OriginalOrInput(proc).InParams)); } return(civlTypeChecker.linearTypeChecker.AvailableLinearVars(absyMap[absy]).Where(v => !(v is GlobalVariable) && civlTypeChecker.LocalVariableLayerRange(v).Contains(layerNum))); }