react-native/React/Modules
Nick Lockwood 88ac40666c Replaced RegExp method parser with recursive descent
Summary:
public

This diff replaces the RegEx module method parser with a handwritten recursive descent parser that's faster and easier to maintain.

The new parser is ~8 times faster when tested on the UIManager.managerChildren() method, and uses ~1/10 as much RAM.

The new parser also supports lightweight generics, and is more tolerant of white space.

(This means that you now can – and should – use types like `NSArray<NSString *> *` for your exported properties and method arguments, instead of `NSStringArray`).

Reviewed By: jspahrsummers

Differential Revision: D2736636

fb-gh-sync-id: f6a11431935fa8acc8ac36f3471032ec9a1c8490
2015-12-10 10:12:29 -08:00
..
RCTAccessibilityManager.h Replaced RCTSparseArray with NSDictionary 2015-11-14 10:28:28 -08:00
RCTAccessibilityManager.m Refactored module access to allow for lazy loading 2015-11-25 04:49:45 -08:00
RCTAlertManager.h Remove an existing UIAlertViews when invalidating the RCTAlertManager 2015-09-18 08:45:27 -07:00
RCTAlertManager.m Add secure and login-password types to AlertIOS. 2015-11-30 19:51:41 -08:00
RCTAppState.h [ReactNative] s/ReactKit/React/g 2015-03-26 02:42:24 -08:00
RCTAppState.m Refactored module access to allow for lazy loading 2015-11-25 04:49:45 -08:00
RCTAsyncLocalStorage.h Added lightweight generic annotations 2015-11-03 14:49:30 -08:00
RCTAsyncLocalStorage.m Replaced RegExp method parser with recursive descent 2015-12-10 10:12:29 -08:00
RCTClipboard.h add Clipboard component for ios and android 2015-12-09 10:04:21 -08:00
RCTClipboard.m add Clipboard component for ios and android 2015-12-09 10:04:21 -08:00
RCTDevLoadingView.h [RCTDevLoadingView] Add ability to disable during development. 2015-09-04 03:46:06 -08:00
RCTDevLoadingView.m Refactored module access to allow for lazy loading 2015-11-25 04:49:45 -08:00
RCTDevMenu.h Added toggle items to dev menu 2015-09-14 09:40:33 -07:00
RCTDevMenu.m Refactored module access to allow for lazy loading 2015-11-25 04:49:45 -08:00
RCTExceptionsManager.h Refactored module access to allow for lazy loading 2015-11-25 04:49:45 -08:00
RCTExceptionsManager.m Replaced RegExp method parser with recursive descent 2015-12-10 10:12:29 -08:00
RCTRedBox.h Added lightweight generic annotations 2015-11-03 14:49:30 -08:00
RCTRedBox.m Refactored module access to allow for lazy loading 2015-11-25 04:49:45 -08:00
RCTSourceCode.h Use JSStringCreateWithUTF8CString and skip NSString decoding when loading the bundle 2015-10-16 08:11:25 -07:00
RCTSourceCode.m Replaced RCTSparseArray with NSDictionary 2015-11-14 10:28:28 -08:00
RCTStatusBarManager.h Removed deprecated RCT_EXPORT + code paths 2015-06-05 09:58:25 -08:00
RCTStatusBarManager.m Refactored module access to allow for lazy loading 2015-11-25 04:49:45 -08:00
RCTTiming.h [ReactNative] Use a single DisplayLink held by the bridge 2015-04-15 07:07:48 -08:00
RCTTiming.m Replaced RCTSparseArray with NSDictionary 2015-11-14 10:28:28 -08:00
RCTUIManager.h Flush UI blocks as soon as they're accumulated 2015-12-02 06:03:27 -08:00
RCTUIManager.m Replaced RegExp method parser with recursive descent 2015-12-10 10:12:29 -08:00