Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
codemercenary committed Jun 12, 2015
2 parents a3ab5c5 + 99f9085 commit 9bbf9df
Show file tree
Hide file tree
Showing 79 changed files with 1,821 additions and 877 deletions.
2 changes: 1 addition & 1 deletion Doxyfile
Expand Up @@ -32,7 +32,7 @@ PROJECT_NAME = Autowiring
# This could be handy for archiving the generated documentation or
# if some version control system is used.

PROJECT_NUMBER = "0.5.4"
PROJECT_NUMBER = "0.6.0"

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer
Expand Down
Expand Up @@ -6,10 +6,10 @@
/// <summary>
/// AutoFilter argument disposition
/// </summary>
struct AutoFilterDescriptorInput {
AutoFilterDescriptorInput(void) = default;
struct AutoFilterArgument {
AutoFilterArgument(void) = default;

AutoFilterDescriptorInput(
AutoFilterArgument(
bool is_input,
bool is_output,
bool is_shared,
Expand Down Expand Up @@ -38,11 +38,11 @@ struct AutoFilterDescriptorInput {
};

template<typename T>
struct AutoFilterDescriptorInputT:
AutoFilterDescriptorInput
struct AutoFilterArgumentT:
AutoFilterArgument
{
AutoFilterDescriptorInputT(void) :
AutoFilterDescriptorInput(
AutoFilterArgumentT(void) :
AutoFilterArgument(
auto_arg<T>::is_input,
auto_arg<T>::is_output,
auto_arg<T>::is_shared,
Expand Down
18 changes: 9 additions & 9 deletions autowiring/AutoFilterDescriptor.h
Expand Up @@ -3,7 +3,7 @@
#include "AnySharedPointer.h"
#include "altitude.h"
#include "auto_arg.h"
#include "AutoFilterDescriptorInput.h"
#include "AutoFilterArgument.h"
#include "CallExtractor.h"
#include "Decompose.h"
#include "has_autofilter.h"
Expand Down Expand Up @@ -33,7 +33,7 @@ struct AutoFilterDescriptorStub {
/// is required to carry information about the type of the proper member function to be called; t_extractedCall is
/// required to be instantiated by the caller and point to the AutoFilter proxy routine.
/// </summary>
AutoFilterDescriptorStub(const std::type_info* pType, autowiring::altitude altitude, const AutoFilterDescriptorInput* pArgs, bool deferred, t_extractedCall pCall) :
AutoFilterDescriptorStub(const std::type_info* pType, autowiring::altitude altitude, const AutoFilterArgument* pArgs, bool deferred, t_extractedCall pCall) :
m_pType(pType),
m_altitude(altitude),
m_pArgs(pArgs),
Expand Down Expand Up @@ -61,7 +61,7 @@ struct AutoFilterDescriptorStub {
// This subscriber's argument types
// NOTE: This is a reference to a static generated list,
// therefore it MUST be const and MUST be shallow-copied.
const AutoFilterDescriptorInput* m_pArgs = nullptr;
const AutoFilterArgument* m_pArgs = nullptr;

// Set if this is a deferred subscriber. Deferred subscribers cannot receive immediate-style
// decorations, and have additional handling considerations when dealing with non-copyable
Expand All @@ -88,7 +88,7 @@ struct AutoFilterDescriptorStub {
const std::type_info* GetType() const { return m_pType; }
size_t GetArity(void) const { return m_arity; }
size_t GetRequiredCount(void) const { return m_requiredCount; }
const AutoFilterDescriptorInput* GetAutoFilterInput(void) const { return m_pArgs; }
const AutoFilterArgument* GetAutoFilterArguments(void) const { return m_pArgs; }
bool IsDeferred(void) const { return m_deferred; }
const std::type_info* GetAutoFilterTypeInfo(void) const { return m_pType; }

Expand All @@ -98,7 +98,7 @@ struct AutoFilterDescriptorStub {
/// <remarks>
/// Returns nullptr when no argument is of the requested type.
/// </remarks>
const AutoFilterDescriptorInput* GetArgumentType(const std::type_info* argType) {
const AutoFilterArgument* GetArgumentType(const std::type_info* argType) {
for(auto pArg = m_pArgs; *pArg; pArg++) {
if (pArg->ti == argType) {
return pArg;
Expand Down Expand Up @@ -164,7 +164,7 @@ struct AutoFilterDescriptor:
T,
CallExtractor<decltype(&T::AutoFilter)>::deferred ? autowiring::altitude::Dispatch : autowiring::altitude::Standard
>::value,
Decompose<decltype(&T::AutoFilter)>::template Enumerate<AutoFilterDescriptorInput, AutoFilterDescriptorInputT>::types,
Decompose<decltype(&T::AutoFilter)>::template Enumerate<AutoFilterArgument, AutoFilterArgumentT>::types,
CallExtractor<decltype(&T::AutoFilter)>::deferred,
&CallExtractor<decltype(&T::AutoFilter)>::template Call<&T::AutoFilter>
)
Expand All @@ -182,7 +182,7 @@ struct AutoFilterDescriptor:
AnySharedPointer(std::make_shared<Fn>(std::forward<Fn>(fn))),
&typeid(Fn),
altitude,
CallExtractor<decltype(&Fn::operator())>::template Enumerate<AutoFilterDescriptorInput, AutoFilterDescriptorInputT>::types,
CallExtractor<decltype(&Fn::operator())>::template Enumerate<AutoFilterArgument, AutoFilterArgumentT>::types,
false,
&CallExtractor<decltype(&Fn::operator())>::template Call<&Fn::operator()>
)
Expand All @@ -206,7 +206,7 @@ struct AutoFilterDescriptor:
///
/// The caller is responsible for decomposing the desired routine into the target AutoFilter call
/// </summary>
AutoFilterDescriptor(const AnySharedPointer& autoFilter, const std::type_info* pType, autowiring::altitude altitude, const AutoFilterDescriptorInput* pArgs, bool deferred, t_extractedCall pCall) :
AutoFilterDescriptor(const AnySharedPointer& autoFilter, const std::type_info* pType, autowiring::altitude altitude, const AutoFilterArgument* pArgs, bool deferred, t_extractedCall pCall) :
AutoFilterDescriptorStub(pType, altitude, pArgs, deferred, pCall),
m_autoFilter(autoFilter)
{}
Expand All @@ -227,7 +227,7 @@ struct AutoFilterDescriptor:
// The remainder is fairly straightforward
&typeid(pfn),
altitude,
CallExtractor<decltype(pfn)>::template Enumerate<AutoFilterDescriptorInput, AutoFilterDescriptorInputT>::types,
CallExtractor<decltype(pfn)>::template Enumerate<AutoFilterArgument, AutoFilterArgumentT>::types,
false,
CallExtractor<decltype(pfn)>::Call
)
Expand Down

0 comments on commit 9bbf9df

Please sign in to comment.