зеркало из https://github.com/microsoft/clang-1.git
Documentation: convert InternalsManual.html to reST
Patch by Anastasi Voitova with with small fixes by me. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170275 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
1228d66b5e
Коммит
5cc0580c6c
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -194,12 +194,11 @@ Source Manager Block
|
|||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The source manager block contains the serialized representation of Clang's
|
||||
`SourceManager <InternalsManual.html#SourceLocation>`_ class, which handles the
|
||||
mapping from source locations (as represented in Clang's abstract syntax tree)
|
||||
into actual column/line positions within a source file or macro instantiation.
|
||||
The AST file's representation of the source manager also includes information
|
||||
about all of the headers that were (transitively) included when building the
|
||||
AST file.
|
||||
:ref:`SourceManager <SourceManager>` class, which handles the mapping from
|
||||
source locations (as represented in Clang's abstract syntax tree) into actual
|
||||
column/line positions within a source file or macro instantiation. The AST
|
||||
file's representation of the source manager also includes information about all
|
||||
of the headers that were (transitively) included when building the AST file.
|
||||
|
||||
The bulk of the source manager block is dedicated to information about the
|
||||
various files, buffers, and macro instantiations into which a source location
|
||||
|
@ -254,8 +253,7 @@ the types block where the serialized representation of that type resides,
|
|||
enabling lazy deserialization of types. When a type is referenced from within
|
||||
the AST file, that reference is encoded using the type ID shifted left by 3
|
||||
bits. The lower three bits are used to represent the ``const``, ``volatile``,
|
||||
and ``restrict`` qualifiers, as in Clang's
|
||||
`QualType <http://clang.llvm.org/docs/InternalsManual.html#Type>`_ class.
|
||||
and ``restrict`` qualifiers, as in Clang's :ref:`QualType <QualType>` class.
|
||||
|
||||
.. _pchinternals-decls:
|
||||
|
||||
|
@ -277,13 +275,12 @@ the top of the hierarchy is the translation unit (``TranslationUnitDecl``),
|
|||
which contains all of the declarations in the translation unit but is not
|
||||
actually written as a specific declaration node. Its child declarations (such
|
||||
as functions or struct types) may also contain other declarations inside them,
|
||||
and so on. Within Clang, each declaration is stored within a `declaration
|
||||
context <http://clang.llvm.org/docs/InternalsManual.html#DeclContext>`_, as
|
||||
represented by the ``DeclContext`` class. Declaration contexts provide the
|
||||
mechanism to perform name lookup within a given declaration (e.g., find the
|
||||
member named ``x`` in a structure) and iterate over the declarations stored
|
||||
within a context (e.g., iterate over all of the fields of a structure for
|
||||
structure layout).
|
||||
and so on. Within Clang, each declaration is stored within a :ref:`declaration
|
||||
context <DeclContext>`, as represented by the ``DeclContext`` class.
|
||||
Declaration contexts provide the mechanism to perform name lookup within a
|
||||
given declaration (e.g., find the member named ``x`` in a structure) and
|
||||
iterate over the declarations stored within a context (e.g., iterate over all
|
||||
of the fields of a structure for structure layout).
|
||||
|
||||
In Clang's AST file format, deserializing a declaration that is a
|
||||
``DeclContext`` is a separate operation from deserializing all of the
|
||||
|
|
|
@ -19,9 +19,8 @@ Site <http://llvm.org>`_.
|
|||
This document describes important notes about using Clang as a compiler
|
||||
for an end-user, documenting the supported features, command line
|
||||
options, etc. If you are interested in using Clang to build a tool that
|
||||
processes code, please see `the Clang Internals
|
||||
Manual <InternalsManual.html>`_. If you are interested in the `Clang
|
||||
Static Analyzer <http://clang-analyzer.llvm.org>`_, please see its web
|
||||
processes code, please see :doc:`InternalsManual`. If you are interested in the
|
||||
`Clang Static Analyzer <http://clang-analyzer.llvm.org>`_, please see its web
|
||||
page.
|
||||
|
||||
Clang is designed to support the C family of programming languages,
|
||||
|
|
|
@ -29,7 +29,7 @@ progress. This page will get filled out with docs soon...
|
|||
RAVFrontendAction
|
||||
UsersManual
|
||||
AutomaticReferenceCounting
|
||||
|
||||
InternalsManual
|
||||
|
||||
Indices and tables
|
||||
==================
|
||||
|
|
Загрузка…
Ссылка в новой задаче