Assembly: fix older assembly code typos
Includes @ickby's 3rdparty opendcm code
This commit is contained in:
@@ -76,7 +76,7 @@ prop_par<Sys, PropertyList>::prop_par() : prop_par<Sys, PropertyList>::base_type
|
||||
typename fusion::result_of::as_vector<parent_rules_sequence>::type,
|
||||
mpl::int_<0> >(sub_rules, parent_rules);
|
||||
|
||||
//we need to specialy treat empty sequences
|
||||
//we need to especially treat empty sequences
|
||||
initalizeLastRule(parent_rules, prop);
|
||||
};
|
||||
|
||||
|
||||
@@ -27,9 +27,9 @@ namespace details {
|
||||
static void getProperties(std::shared_ptr<Object> ptr, typename details::pts<typename Object::PropertySequence>::type& seq);
|
||||
};
|
||||
|
||||
//when objects should not be generated we need to get a empy rule, as obj_rule_init
|
||||
//trys always to access the rules attribute and when the parser_generator trait is not
|
||||
//specialitzed it's impossible to have the attribute type right in the unspecialized trait
|
||||
//when objects should not be generated we need to get an empty rule, as obj_rule_init
|
||||
//always tries to access the rules attribute and when the parser_generator trait is not
|
||||
//specialized it's impossible to have the attribute type right in the unspecialized trait
|
||||
template<typename Sys, typename seq, typename state>
|
||||
struct obj_generator_fold : mpl::fold< seq, state,
|
||||
mpl::if_< parser_generate<mpl::_2, Sys>,
|
||||
@@ -46,14 +46,15 @@ namespace details {
|
||||
//create a vector with the appropriate rules for all objects. Do this with the rule init struct, as it gives
|
||||
//automatic initialisation of the rules when the objects are created
|
||||
typedef typename obj_generator_fold<Sys, ObjectList,mpl::vector<> >::type init_rules_vector;
|
||||
//push back a empty rule so that we know where to go when nothing is to do
|
||||
//push back a empty rule so that we know where to go when there's nothing to do
|
||||
typedef typename mpl::push_back<init_rules_vector, empty_grammar >::type rules_vector;
|
||||
|
||||
//create the fusion sequence of our rules
|
||||
typedef typename fusion::result_of::as_vector<rules_vector>::type rules_sequnce;
|
||||
|
||||
//this struct returns the right accessvalue for the sequences. If we access a value bigger than the property vector size
|
||||
//we use the last rule, as we made sure this is an empty one
|
||||
//this struct returns the right access value for the sequences. If we access
|
||||
//a value bigger than the property vector size we use the last rule, as we
|
||||
//made sure this is an empty one
|
||||
template<int I>
|
||||
struct index : public mpl::if_< mpl::less<mpl::int_<I>, mpl::size<ObjectList> >,
|
||||
mpl::int_<I>, typename mpl::size<ObjectList>::prior >::type {};
|
||||
|
||||
@@ -41,9 +41,9 @@ struct obj_parser : public qi::grammar<IIterator, qi::unused_type(typename detai
|
||||
static void setProperties(std::shared_ptr<Object> ptr, typename details::pts<typename Object::PropertySequence>::type& seq);
|
||||
};
|
||||
|
||||
//when objects should not be generated we need to get a empy rule, as obj_rule_init
|
||||
//trys always to access the rules attribute and when the parser_generator trait is not
|
||||
//specialitzed it's impossible to have the attribute type right in the unspecialized trait
|
||||
//when objects should not be generated we need to get an empty rule, as obj_rule_init
|
||||
//always tries to access the rules attribute and when the parser_generator trait is not
|
||||
//specialized it's impossible to have the attribute type right in the unspecialized trait
|
||||
template<typename Sys, typename seq, typename state>
|
||||
struct obj_parser_fold : mpl::fold< seq, state,
|
||||
mpl::if_< parser_parse<mpl::_2, Sys>,
|
||||
|
||||
Reference in New Issue
Block a user