X-Git-Url: https://git.saurik.com/cycript.git/blobdiff_plain/b799113bd4ec270504dd9f552142c1adfd6e583a..c22e009d49bb891a560f8a6219fe3499859eff4b:/sig/types.hpp diff --git a/sig/types.hpp b/sig/types.hpp index d2367af..1c8b94d 100644 --- a/sig/types.hpp +++ b/sig/types.hpp @@ -30,11 +30,14 @@ namespace sig { enum Primitive { + function_P = '\0', + block_P = '\a', + + unknown_P = '?', typename_P = '#', union_P = '(', string_P = '*', selector_P = ':', - block_P = '?', object_P = 'W', boolean_P = 'B', uchar_P = 'C', @@ -93,6 +96,10 @@ struct Type { struct Type *joc_parse_type(char **name, char eos, bool variable, bool signature); void joc_parse_signature(struct Signature *signature, char **name, char eos, bool variable); +_finline bool IsFunctional(Primitive primitive) { + return primitive == block_P || primitive == function_P; +} + _finline bool IsAggregate(Primitive primitive) { return primitive == struct_P || primitive == union_P; }