Xamarin Public Jenkins (auto-signing) e79aa3c0ed Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
2016-08-03 10:59:49 +00:00

39 lines
1.3 KiB
C#

//-----------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.Activities
{
using System;
using System.ComponentModel;
using System.Runtime;
static class VariableModifiersHelper
{
static bool IsDefined(VariableModifiers modifiers)
{
return (modifiers == VariableModifiers.None ||
((modifiers & (VariableModifiers.Mapped | VariableModifiers.ReadOnly)) == modifiers));
}
public static bool IsReadOnly(VariableModifiers modifiers)
{
return (modifiers & VariableModifiers.ReadOnly) == VariableModifiers.ReadOnly;
}
public static bool IsMappable(VariableModifiers modifiers)
{
return (modifiers & VariableModifiers.Mapped) == VariableModifiers.Mapped;
}
public static void Validate(VariableModifiers modifiers, string argumentName)
{
if (!IsDefined(modifiers))
{
throw FxTrace.Exception.AsError(
new InvalidEnumArgumentException(argumentName, (int)modifiers, typeof(VariableModifiers)));
}
}
}
}