Commit Graph

8943 Commits

Author SHA1 Message Date
Behdad Esfahbod
50dc3e7d9f Add hb_iota() 2019-05-08 10:35:02 -07:00
Behdad Esfahbod
aa4ac13f0b [iter] Actually fix previous commit
The iter objects shouldn't not be const.  D'oh.
2019-05-08 10:03:10 -07:00
Behdad Esfahbod
a66598e030 [iter] For ref-qualified variants 2019-05-08 10:03:10 -07:00
rsheeter
fa576ce187
Update README.md 2019-05-08 09:53:58 -07:00
rsheeter
d109c9e767
Update README.md 2019-05-08 09:53:29 -07:00
rsheeter
4063181791 [docs] add fuzzer instructions (courtesy of Garret) 2019-05-08 09:50:42 -07:00
Roderick Sheeter
00946ca3aa [docs] add sample commands for test exec 2019-05-08 09:50:42 -07:00
Behdad Esfahbod
8479eb5955 [iter] Fix hb_sink() to accept rvalue 2019-05-08 09:48:55 -07:00
Behdad Esfahbod
710d459aca [iter] Default predicates to hb_identity instead of hb_bool
The bool conversion happens after predicate is called automatically.
2019-05-08 09:33:09 -07:00
Behdad Esfahbod
fe14a4000a Adjust hb_all/any/none 2019-05-08 09:32:19 -07:00
Behdad Esfahbod
4a101d8ffc Add hb_match 2019-05-08 09:16:33 -07:00
Behdad Esfahbod
26adefd9ea [algs] Try f[v] in hb_get() as last resort 2019-05-08 09:14:44 -07:00
Behdad Esfahbod
0601a19d38 Fix a few more double-pomotion errors 2019-05-08 07:47:36 -07:00
Behdad Esfahbod
2ba984fcbb Fix signed comparison on 32bit 2019-05-07 23:28:22 -07:00
Behdad Esfahbod
dfc5780245 Fix more double-promotion errors
WHy do only some of the clang bots catch this I have no idea :(.
2019-05-07 23:26:09 -07:00
Behdad Esfahbod
c2c9d204fa Fix double-promotion warnings
Make it an error.
2019-05-07 23:13:38 -07:00
Behdad Esfahbod
2c7093ed01 More tests 2019-05-07 23:10:59 -07:00
Behdad Esfahbod
56d2d0294b [algs] Sprinkle hb_min/max with hb-forward salad
Let's see if fixes MSVC fail.  Though, the error doesn't make sense to me.

  hb-blob.cc
c:\projects\harfbuzz\src\hb-algs.hh(166): error C2440: 'return': cannot convert from 'unsigned int' to 'unsigned int &&' [C:\projects\harfbuzz\build\harfbuzz.vcxproj]
  c:\projects\harfbuzz\src\hb-algs.hh(166): note: You cannot bind an lvalue to an rvalue reference
  c:\projects\harfbuzz\src\hb-algs.hh(174): note: see reference to function template instantiation 'T &&<unnamed-type-hb_min>::impl<T,unsigned int&>(T &&,T2) const' being compiled
          with
          [
              T=unsigned int,
              T2=unsigned int &
          ]
2019-05-07 23:08:49 -07:00
Behdad Esfahbod
bdbfdc92b5 [iter] Add value and projection to hb_all/any/none
Allows for eg, checking all values equal 2: hb_all (it, 2).
2019-05-07 23:02:44 -07:00
Behdad Esfahbod
cf61acb9ea [iter] Accept rvalues to hb_enumerate() 2019-05-07 22:45:01 -07:00
Behdad Esfahbod
e8bd5fc3fa [meta] Move hb_invoke from algs to meta 2019-05-07 22:29:40 -07:00
Behdad Esfahbod
af571dbffc [meta] Replace most hb_enable_if with hb_requires
They do absolutely same thing.  hb_requires is to encode constraints,
whereas hb_enable_if is for more conditional enabling.
2019-05-07 21:39:20 -07:00
Behdad Esfahbod
6fa1f38070 [algs] Accept varargs in hb_min/max 2019-05-07 21:33:26 -07:00
Behdad Esfahbod
1ad07080c3 Rename 2019-05-07 21:00:23 -07:00
Behdad Esfahbod
83e3eabd84 Whitespace 2019-05-07 20:58:43 -07:00
Behdad Esfahbod
2b9402a86a Use universal references in hb_min/max 2019-05-07 20:55:33 -07:00
Behdad Esfahbod
41248cce0e Remove MIN/MAX in favor of hb_min/hb_max 2019-05-07 20:54:31 -07:00
Behdad Esfahbod
5c0f62adc9 [serializer] Accept pointer & reference in more methods 2019-05-07 17:25:58 -07:00
Behdad Esfahbod
839618de3b [serializer] Minor 2019-05-07 17:21:27 -07:00
Behdad Esfahbod
035b818e34 [meta] Fix addressof() 2019-05-07 17:21:18 -07:00
Behdad Esfahbod
7654ebe3a5 Whitespace 2019-05-07 16:53:03 -07:00
Behdad Esfahbod
95426ea983 Add comment 2019-05-07 15:56:51 -07:00
Behdad Esfahbod
e33ad25222 [serialize] FeatureVariations subset->copy 2019-05-07 15:46:24 -07:00
Behdad Esfahbod
fa8c4ba811 Minor 2019-05-07 14:26:03 -07:00
Behdad Esfahbod
c09d6c58e9 [iter] Require lvalue in operators that return reference 2019-05-07 14:09:00 -07:00
Behdad Esfahbod
52f6c04c1e Minor 2019-05-07 13:45:48 -07:00
Behdad Esfahbod
7c037bd2be [name] Clean up some more 2019-05-07 13:37:43 -07:00
Behdad Esfahbod
f982b9d9f8 [name] Clean up serialize() API 2019-05-07 13:29:01 -07:00
Behdad Esfahbod
59ee61fddc [name] Use iterators more 2019-05-07 13:26:15 -07:00
Behdad Esfahbod
2eb7e0e0e9 [serialize] Minor 2019-05-07 12:45:38 -07:00
Behdad Esfahbod
1c81cff2d3 Fix signed-comparison error on 32bit 2019-05-07 11:51:10 -07:00
Behdad Esfahbod
938de31575 Comment 2019-05-07 11:47:02 -07:00
Behdad Esfahbod
159fe962e9 [doc] Make header search more resilient
How stupid to scan all files... Sigh.
2019-05-07 11:46:11 -07:00
Behdad Esfahbod
9b05db33b5 [ragel] Regenerate ragel-generated files using ragel 7.0.0.11 May 2018 2019-05-07 11:39:44 -07:00
Behdad Esfahbod
521262b236 [subset] Add TODO 2019-05-07 11:08:08 -07:00
Behdad Esfahbod
e6a622b5b2 [serialize] Enable bias assertion 2019-05-07 11:06:43 -07:00
Behdad Esfahbod
530ddbbc32 [serialize] Use range-based loop 2019-05-07 11:05:51 -07:00
Behdad Esfahbod
0987c4204f [name] Remove dead code 2019-05-07 11:01:02 -07:00
Behdad Esfahbod
5ac4ab6868 [subset] fix for name table serializing with new serializer machinery 2019-05-07 10:59:03 -07:00
Behdad Esfahbod
c548fcedc4 [WIP] [name] Port to fancy serializer machinery 2019-05-07 10:59:03 -07:00