Variable: objc-font-lock-keywords-3
objc-font-lock-keywords-3 is a variable defined in cc-fonts.el.gz.
Value
Large value
(c-maybe-font-lock-wrong-style-comments c-font-lock-cpp-messages
("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(^\\s *\\(#\\)\\s *\\_<\\(i\\(?:mport\\|nclude\\)\\)\\_>[ ]*\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<\\([^>\n
]*\\)>?\\)"
11 font-lock-string-face t)
(#[257
"\302\300!\303!\210`W\203z\304\305\306#\203z\307\224b\210\303!\204\307\225b\210\310 \311\312\"\216\313\224\203l\214\314\315\224\315\225\316\317$\210\313\225b\210e}\210\320 \210\321 !\203h\314\307\224\307\225\316\322$\210\307\225b\210\320 \210\323f\324=\203h\323u\210\202B)\202u\314\315\224\315\225\316\322$\210)\210\202)\323\207"
[parse-sexp-lookup-properties
c-symbol-key boundp
c-skip-comments-and-strings
re-search-forward
"\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_@$][[:alnum:]_$@]\\{,1000\\}\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)"
t 0 match-data
make-closure
#[0 "\301\300\302\"\207"
[V0 set-match-data t]
3]
8 put-text-property 6 face
font-lock-function-name-face
c-forward-sws looking-at
font-lock-variable-name-face
nil 44]
7 "\n\n(fn LIMIT)"])
(#[257
"\303\300! \304=\203@\212\305 \210`)\306!\210\307\310\311#\203?\312\224b\210\306!\204\312\225b\210\313 \314\315\"\216\316\317\224\317\225\320\n$)\266\202\210\306!\210`W\203\207\307\321\311#\203\207\312\224b\210\306!\204D\312\225b\210\322\225b\210\313 \314\315\"\216\312\225\307\310\323#\203\201\316\317\224\317\225\320\n$\210\202m)\266\202D)\324\207"
[parse-sexp-lookup-properties
c-font-lock-context
c-preprocessor-face-name
boundp in-cpp-expr
c-end-of-macro
c-skip-comments-and-strings
re-search-forward
"\\_<\\(defined\\)\\_>" t
0 match-data make-closure
#[0 "\301\300\302\"\207"
[V0 set-match-data t]
3]
put-text-property 1 face
"\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\_<\\(\\(?:eli\\(?:f\\(?:n?de\\)\\)?\\|i\\)f\\)\\_>\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*"
3 move nil]
8 "\n\n(fn LIMIT)"])
(#[257
"\302\300!\303!\210`W\2039\304\305\306#\2039\307\224b\210\303!\204\307\225b\210\310 \311\312\"\216\313\314\224\314\225\315 $)\266\202)\316\207"
[parse-sexp-lookup-properties
c-preprocessor-face-name
boundp
c-skip-comments-and-strings
re-search-forward
"\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$@]+\\)"
t 0 match-data
make-closure
#[0 "\301\300\302\"\207"
[V0 set-match-data t]
3]
put-text-property 3 face
nil]
7 "\n\n(fn LIMIT)"])
(eval list
#[257
"\300\301!\210\302\303\304#\211\262\203\305\224b\210\301!\204\305\225b\210\207"
[nil
c-skip-comments-and-strings
re-search-forward
"\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\_>"
t 0]
6 "\n\n(fn LIMIT)"]
3
c-negation-char-face-name
'append)
(eval list "\240" 0
(progn
(unless
(c-face-name-p
'c-nonbreakable-space-face)
(c-make-inverse-face
'font-lock-warning-face
'c-nonbreakable-space-face))
''c-nonbreakable-space-face))
("\\s|" 0
font-lock-warning-face t nil)
c-font-lock-invalid-single-quotes
(eval list
"\\_<\\(\\_<\\(IB\\(?:Action\\|Outlet\\)\\|N\\(?:O\\|S_\\(?:DURING\\|\\(?:END\\)?HANDLER\\)\\|il\\)\\|YES\\|nil\\)\\_>\\)\\_>"
1 c-constant-face-name)
("\\_<\\_<\\(@\\(?:autoreleasepool\\|c\\(?:atch\\|\\(?:las\\|ompatibility_alia\\)s\\)\\|d\\(?:efs\\|ynamic\\)\\|en\\(?:code\\|d\\)\\|finally\\|i\\(?:mplementation\\|nterface\\)\\|optional\\|p\\(?:ackage\\|r\\(?:ivate\\|o\\(?:perty\\|t\\(?:ected\\|ocol\\)\\)\\)\\|ublic\\)\\|required\\|s\\(?:elector\\|yn\\(?:chronized\\|thesize\\)\\)\\|t\\(?:hrow\\|ry\\)\\)\\|auto\\|b\\(?:reak\\|y\\(?:copy\\|ref\\)\\)\\|c\\(?:ase\\|on\\(?:st\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\|xtern\\)\\|for\\|goto\\|i\\(?:nout\\|[fn]\\)\\|o\\(?:neway\\|ut\\)\\|return\\|s\\(?:elf\\|t\\(?:atic\\|ruct\\)\\|uper\\|witch\\)\\|typedef\\|union\\|\\(?:volat\\|wh\\)ile\\)\\_>"
1 font-lock-keyword-face)
#[257
"\304\300!\305!\210`W\203i\306\307\310#\203i\311\224b\210\305!\204\311\225b\210\312 \313\314\"\216\310\315`\2065dW\203F\214e\206@d}\210\316 )\210`\317 \320=\203W\211b\210\310\317 )\210\210`V\203ab\210\321 +\266\202)\315\207"
[parse-sexp-lookup-properties
c-record-type-identifiers
c-record-ref-identifiers
c-promote-possible-types
boundp
c-skip-comments-and-strings
re-search-forward "\\[" t 0
match-data make-closure
#[0 "\301\300\302\"\207"
[V0 set-match-data t] 3]
nil c-forward-sws
c-forward-type known
c-fontify-recorded-types-and-refs]
5 "\n\n(fn LIMIT)"]
#[257
"\303\300!\304!\210`W\203B\305\306\307#\203B\310\224b\210\304!\204\310\225b\210\310\224b\210\311 \312\313\"\216\307\314\303\300!\315 \210\316 ,\266\202)\314\207"
[parse-sexp-lookup-properties
c-record-type-identifiers
c-record-ref-identifiers
boundp
c-skip-comments-and-strings
re-search-forward
"\\_<\\(@\\(?:i\\(?:mplementation\\|nterface\\)\\|protocol\\)\\)\\_>"
t 0 match-data make-closure
#[0 "\301\300\302\"\207"
[V0 set-match-data t] 3]
nil
c-forward-objc-directive
c-fontify-recorded-types-and-refs]
5 "\n\n(fn LIMIT)"]
(eval list "\\(!\\)[^=]" 1
c-negation-char-face-name)
c-font-lock-complex-decl-prepare
#[257
"\301\300!\302!\210`W\203;\303\304\305#\203;\306\224b\210\302!\204\306\225b\210\307 \310\311\"\216\312\225S\313\211T\314\315$)\266\202)\316\207"
[parse-sexp-lookup-properties
boundp
c-skip-comments-and-strings
re-search-forward
"\\_<\\(@\\(?:compatibility_alias\\|d\\(?:efs\\|ynamic\\)\\|end\\|optional\\|p\\(?:ackage\\|r\\(?:ivate\\|o\\(?:perty\\|tected\\)\\)\\|ublic\\)\\|required\\|synthesize\\)\\)\\_>"
t 0 match-data make-closure
#[0 "\301\300\302\"\207"
[V0 set-match-data t] 3]
1 put-text-property c-type
c-decl-end nil]
8 "\n\n(fn LIMIT)"]
c-font-lock-objc-methods
c-font-lock-cut-off-declarators
c-font-lock-declarations
c-font-lock-enclosing-decls
c-font-lock-<>-arglists
c-font-lock-c++-using
("\\_<\\(\\_<\\(BOOL\\|Class\\|IMP\\|SEL\\|char\\|double\\|float\\|i\\(?:d\\|nt\\)\\|long\\|s\\(?:hort\\|igned\\)\\|\\(?:unsigne\\|voi\\)d\\)\\_>\\)\\_>"
1 'font-lock-type-face)
c-font-lock-ids-with-dollar
c-font-lock-enum-tail
c-font-lock-enum-body
(eval list
"\\_<\\(\\_<\\(goto\\)\\_>\\)\\_>\\s *\\([[:alpha:]_@$][[:alnum:]_$@]\\{,1000\\}\\)"
(list 3
c-label-face-name
nil t))
(#[257
"\304 \211\203 \211b\210\210\305\300!\306\307!`\310!@\311=\203\210`b\210\312!\210\313\314\315#\203\\\316\224b\210\312!\204$\316\225b\210\317 \320\321\"\216\315\322\315\323\324!\210`V\203Tb\210\325 ,\266\202$)\322\207"
[parse-sexp-lookup-properties
c-record-type-identifiers
c-record-ref-identifiers
c-promote-possible-types
c-literal-start boundp
c-determine-limit 1000
c-beginning-of-decl-1 same
c-skip-comments-and-strings
re-search-forward
"\\_<\\(\\_<\\(@class\\)\\_>\\)\\_>"
t 0 match-data
make-closure
#[0 "\301\300\302\"\207"
[V0 set-match-data t]
3]
nil
c-forward-keyword-clause 1
c-fontify-recorded-types-and-refs]
8 "\n\n(fn LIMIT)"])
(#[257
"\304\300!\305!\210`W\203F\306\307\310#\203F\311\224b\210\305!\204\311\225b\210\312 \313\314\"\216\310\315\310\316\317!\210`V\203>b\210\320 ,\266\202)\315\207"
[parse-sexp-lookup-properties
c-record-type-identifiers
c-record-ref-identifiers
c-promote-possible-types
boundp
c-skip-comments-and-strings
re-search-forward
"\\_<\\(\\_<\\(@defs\\)\\_>\\)\\_>"
t 0 match-data
make-closure
#[0 "\301\300\302\"\207"
[V0 set-match-data t]
3]
nil
c-forward-keyword-clause 1
c-fontify-recorded-types-and-refs]
5 "\n\n(fn LIMIT)"]))
Documentation
Accurate normal font locking for Objective-C mode.
Like the variable objc-font-lock-keywords-2(var)/objc-font-lock-keywords-2(fun) but detects declarations in a more
accurate way that works in most cases for arbitrary types without the
need for objc-font-lock-extra-types.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/cc-fonts.el.gz
(defconst objc-font-lock-keywords-3 (c-lang-const c-matchers-3 objc)
"Accurate normal font locking for Objective-C mode.
Like the variable `objc-font-lock-keywords-2' but detects declarations in a more
accurate way that works in most cases for arbitrary types without the
need for `objc-font-lock-extra-types'.")