{"_id":"5b1f8576c2505d00031254d1","project":"571fa55ca0acd42000af9545","version":{"_id":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":4,"forked_from":"594949e52be16d0026ec04cd","createdAt":"2017-06-20T16:14:29.816Z","releaseDate":"2017-06-20T16:14:29.816Z","categories":["5b1f8576c2505d0003125424","5b1f8576c2505d0003125425","5b1f8576c2505d0003125426","5b1f8576c2505d0003125427","5b1f8576c2505d0003125428","5b1f8576c2505d0003125429","5b1f8576c2505d000312542a","5b1f8576c2505d000312542b","5b1f8576c2505d000312542c","5b1f8576c2505d000312542d","5b1f8576c2505d000312542e","5b1f8576c2505d000312542f","5b1f8576c2505d0003125430","5b1f8576c2505d0003125431","5b1f8576c2505d0003125432","5b1f8576c2505d0003125433","5b1f8576c2505d0003125434","5b1f8576c2505d0003125435","5b1f8576c2505d0003125436","5b1f8576c2505d0003125437","5b1f8576c2505d0003125438","5b1f8aab9c683000032979e7","5b1f8b2f3073470003ffa5da","5b1f8bd9fd653400031d94f4","5b1f900bd4c5f000036b57bd"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"Mangalica","version_clean":"3.3.0","version":"3.3.0"},"category":{"_id":"5b1f8576c2505d0003125432","version":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2017-01-01T19:32:06.235Z","from_sync":false,"order":15,"slug":"base-sdk","title":"Base SDK"},"user":"571fa519db52d01700f5cf3d","githubsync":"","__v":0,"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2017-06-20T18:33:20.379Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":3,"body":"> extends Attribute, ISerializationCallbackReceiver\n\n## Overview\n\nSpecifies a method to be used as a predicate to allow VRTK_SDKManager to automatically add and remove scripting define symbols. Only allowed on static methods that take no arguments and return a `bool`.\n\n## Class Variables\n\n * `public const string RemovableSymbolPrefix` - The prefix of scripting define symbols that must be used to be able to automatically remove the symbols. Default: `\"VRTK_DEFINE_\"`\n * `public string symbol` - The scripting define symbol to conditionally add or remove.\n * `public BuildTargetGroup buildTargetGroup` - The build target group to use when conditionally adding or removing symbol.\n\n## Class Methods\n\n### SDK_ScriptingDefineSymbolPredicateAttribute/2\n\n  > `public SDK_ScriptingDefineSymbolPredicateAttribute(string symbol, string buildTargetGroupName)`\n\n * Parameters\n   * `string symbol` - The scripting define symbol to conditionally add or remove. Needs to start with `RemovableSymbolPrefix` to be able to automatically remove the symbol. `null` and `string.Empty` are not allowed.\n   * `string buildTargetGroupName` - The name of a constant of `BuildTargetGroup`. `BuildTargetGroup.Unknown`, `null` and `string.Empty` are not allowed.\n * Returns\n   * _none_\n\nCreates a new attribute.\n\n### SDK_ScriptingDefineSymbolPredicateAttribute/1\n\n  > `public SDK_ScriptingDefineSymbolPredicateAttribute(SDK_ScriptingDefineSymbolPredicateAttribute attributeToCopy)`\n\n * Parameters\n   * `SDK_ScriptingDefineSymbolPredicateAttribute attributeToCopy` - The attribute to copy.\n * Returns\n   * _none_\n\nCreates a new attribute by copying an existing one.","excerpt":"","slug":"sdk_scriptingdefinesymbolpredicateattribute","type":"basic","title":"SDK_ScriptingDefineSymbolPredicateAttribute"}

SDK_ScriptingDefineSymbolPredicateAttribute


> extends Attribute, ISerializationCallbackReceiver ## Overview Specifies a method to be used as a predicate to allow VRTK_SDKManager to automatically add and remove scripting define symbols. Only allowed on static methods that take no arguments and return a `bool`. ## Class Variables * `public const string RemovableSymbolPrefix` - The prefix of scripting define symbols that must be used to be able to automatically remove the symbols. Default: `"VRTK_DEFINE_"` * `public string symbol` - The scripting define symbol to conditionally add or remove. * `public BuildTargetGroup buildTargetGroup` - The build target group to use when conditionally adding or removing symbol. ## Class Methods ### SDK_ScriptingDefineSymbolPredicateAttribute/2 > `public SDK_ScriptingDefineSymbolPredicateAttribute(string symbol, string buildTargetGroupName)` * Parameters * `string symbol` - The scripting define symbol to conditionally add or remove. Needs to start with `RemovableSymbolPrefix` to be able to automatically remove the symbol. `null` and `string.Empty` are not allowed. * `string buildTargetGroupName` - The name of a constant of `BuildTargetGroup`. `BuildTargetGroup.Unknown`, `null` and `string.Empty` are not allowed. * Returns * _none_ Creates a new attribute. ### SDK_ScriptingDefineSymbolPredicateAttribute/1 > `public SDK_ScriptingDefineSymbolPredicateAttribute(SDK_ScriptingDefineSymbolPredicateAttribute attributeToCopy)` * Parameters * `SDK_ScriptingDefineSymbolPredicateAttribute attributeToCopy` - The attribute to copy. * Returns * _none_ Creates a new attribute by copying an existing one.