Changeset 45553f5
- Timestamp:
- Mar 5, 2025, 7:15:22 PM (7 weeks ago)
- Branches:
- master
- Children:
- 88771d7
- Parents:
- ee8f72d (diff), ee22919 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified src/Common/Iterate.hpp ¶
ree8f72d r45553f5 208 208 return group_iterate_t<Args...>( std::forward<Args>( args )... ); 209 209 } 210 211 // -----------------------------------------------------------------------------212 // Helper struct and function to support213 // for ( val : lazy_map( container1, f ) ) {}214 // syntax to have a for each that iterates a container,215 // mapping each element by applying f.216 217 template< typename T, typename Func >218 struct lambda_iterate_t {219 const T & ref;220 std::function<Func> f;221 222 struct iterator {223 typedef decltype(begin(ref)) Iter;224 Iter it;225 std::function<Func> f;226 iterator( Iter it, std::function<Func> f ) : it(it), f(f) {}227 iterator & operator++() {228 ++it; return *this;229 }230 bool operator!=( const iterator &other ) const { return it != other.it; }231 auto operator*() const -> decltype(f(*it)) { return f(*it); }232 };233 234 lambda_iterate_t( const T & ref, std::function<Func> f ) : ref(ref), f(f) {}235 236 auto begin() const -> decltype(iterator(std::begin(ref), f)) { return iterator(std::begin(ref), f); }237 auto end() const -> decltype(iterator(std::end(ref), f)) { return iterator(std::end(ref), f); }238 };239 240 template< typename... Args >241 lambda_iterate_t<Args...> lazy_map( const Args &... args ) {242 return lambda_iterate_t<Args...>( args...);243 }244 245 // Local Variables: //246 // tab-width: 4 //247 // mode: c++ //248 // compile-command: "make install" //249 // End: // -
TabularUnified src/Parser/lex.ll ¶
ree8f72d r45553f5 10 10 * Created On : Sat Sep 22 08:58:10 2001 11 11 * Last Modified By : Peter A. Buhr 12 * Last Modified On : Fri Jan 17 14:36:16202513 * Update Count : 8 7812 * Last Modified On : Mon Mar 3 09:21:33 2025 13 * Update Count : 880 14 14 */ 15 15 … … 240 240 basetypeof { KEYWORD_RETURN(BASETYPEOF); } // CFA 241 241 _Bool { KEYWORD_RETURN(BOOL); } // C99 242 __SVBool_t { KEYWORD_RETURN( SVBOOL); } // gcc (ARM)242 __SVBool_t { KEYWORD_RETURN(BOOL); } // gcc (ARM) 243 243 break { KEYWORD_RETURN(BREAK); } 244 244 case { KEYWORD_RETURN(CASE); } … … 287 287 _Float128 { FLOATXX(FLOAT128); } // GCC 288 288 _Float128x { FLOATXX(FLOAT128X); } // GCC 289 __Float32x4_t { FLOATXX(FLOAT 32X4); } // GCC (ARM)290 __Float64x2_t { FLOATXX(FLOAT 64X2); } // GCC (ARM)291 __SVFloat32_t { FLOATXX( SVFLOAT32); } // GCC (ARM)292 __SVFloat64_t { FLOATXX( SVFLOAT64); } // GCC (ARM)289 __Float32x4_t { FLOATXX(FLOAT128); } // GCC (ARM) 290 __Float64x2_t { FLOATXX(FLOAT128); } // GCC (ARM) 291 __SVFloat32_t { FLOATXX(FLOAT128); } // GCC (ARM) 292 __SVFloat64_t { FLOATXX(FLOAT128); } // GCC (ARM) 293 293 for { KEYWORD_RETURN(FOR); } 294 294 forall { KEYWORD_RETURN(FORALL); } // CFA
Note: See TracChangeset
for help on using the changeset viewer.