Пример #1
0
        public RSParameterInfo(RSParameterAttribute inAttribute, ParameterInfo inInfo)
        {
            Name        = inAttribute?.Name ?? inInfo.Name;
            Description = inAttribute?.Description ?? string.Empty;

            m_ParameterInfo        = inInfo;
            m_ParameterType        = inInfo.ParameterType;
            m_TriggerParameterType = inAttribute?.TriggerParameterType;

            NotNull = inAttribute == null ? false : inAttribute.NotNull;
        }
Пример #2
0
        internal void GenerateParameters(RSTypeAssembly inAssembly)
        {
            int totalArgs = m_Parameters.Length - m_MethodSettings.EditorArgsStartIndex;

            Parameters = new RSParameterInfo[totalArgs];
            for (int i = 0; i < totalArgs; ++i)
            {
                int                  idx            = i + m_MethodSettings.EditorArgsStartIndex;
                ParameterInfo        paramInfo      = m_Parameters[idx];
                RSParameterAttribute paramAttribute = paramInfo.GetCustomAttribute <RSParameterAttribute>();
                Parameters[i] = new RSParameterInfo(paramAttribute, paramInfo);
                Parameters[i].Link(inAssembly);
            }

            TempArgStorage = new RSValue[totalArgs];
        }