public static bool IsAvailable([CanBeNull] IMethodDeclaration methodDeclaration) { if (methodDeclaration == null) { return(false); } var declaredElement = methodDeclaration.DeclaredElement; return(declaredElement != null && methodDeclaration.IsValid() && !BurstCodeAnalysisUtil.IsBurstProhibitedFunction(declaredElement)); }
public static bool IsAvailable([CanBeNull] IMethodDeclaration methodDeclaration) { if (methodDeclaration == null) { return(false); } methodDeclaration.GetPsiServices().Locks.AssertReadAccessAllowed(); var declaredElement = methodDeclaration.DeclaredElement; return(declaredElement != null && methodDeclaration.IsValid() && !BurstCodeAnalysisUtil.IsBurstProhibitedFunction(declaredElement)); }
public override LocalList <IDeclaredElement> GetBanMarksFromNode(ITreeNode currentNode, IDeclaredElement containingFunction) { var result = base.GetBanMarksFromNode(currentNode, containingFunction); if (containingFunction == null) { return(result); } var functionDeclaration = currentNode as IFunctionDeclaration; var function = functionDeclaration?.DeclaredElement; if (function == null) { return(result); } if (BurstCodeAnalysisUtil.IsBurstProhibitedFunction(function)) { result.Add(function); } return(result); }