Skip to content

Commit 6a62b75

Browse files
committed
initial commit
0 parents  commit 6a62b75

File tree

236 files changed

+141344
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

236 files changed

+141344
-0
lines changed

.gitattributes

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Auto detect text files and perform LF normalization
2+
# http://git-scm.com/docs/gitattributes
3+
* text=auto

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
tags
2+
**/*.swp
3+
**/*.swo
4+
.swp
5+
.swo
6+
-.d
7+
eastl_build_out

3RDPARTYLICENSES.TXT

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
Use of the software in this package is governed by the EA Development Software License,
2+
found in the accompanying file EA_DEV_SOFTWARE_LICENSE.txt.
3+
4+
Additional licenses also apply to this software package as detailed below.
5+
6+
7+
HP STL comes with the following license:
8+
9+
///////////////////////////////////////////////////////////////////////////////
10+
// The tree insert and erase functions below are based on the original
11+
// HP STL tree functions. Use of these functions was been approved by
12+
// EA legal on November 4, 2005 and the approval documentation is available
13+
// from the EASTL maintainer or from the EA legal deparatment on request.
14+
//
15+
// Copyright (c) 1994
16+
// Hewlett-Packard Company
17+
//
18+
// Permission to use, copy, modify, distribute and sell this software
19+
// and its documentation for any purpose is hereby granted without fee,
20+
// provided that the above copyright notice appear in all copies and
21+
// that both that copyright notice and this permission notice appear
22+
// in supporting documentation. Hewlett-Packard Company makes no
23+
// representations about the suitability of this software for any
24+
// purpose. It is provided "as is" without express or implied warranty.
25+
///////////////////////////////////////////////////////////////////////////////
26+
27+
28+
29+
libc++ comes with the following license:
30+
31+
==============================================================================
32+
libc++ License
33+
==============================================================================
34+
35+
The libc++ library is dual licensed under both the University of Illinois
36+
"BSD-Like" license and the MIT license. As a user of this code you may choose
37+
to use it under either license. As a contributor, you agree to allow your code
38+
to be used under both.
39+
40+
Full text of the relevant licenses is included below.
41+
42+
==============================================================================
43+
44+
University of Illinois/NCSA
45+
Open Source License
46+
47+
Copyright (c) 2009-2015 by the contributors listed in CREDITS.TXT
48+
49+
All rights reserved.
50+
51+
Developed by:
52+
53+
LLVM Team
54+
55+
University of Illinois at Urbana-Champaign
56+
57+
http://llvm.org
58+
59+
Permission is hereby granted, free of charge, to any person obtaining a copy of
60+
this software and associated documentation files (the "Software"), to deal with
61+
the Software without restriction, including without limitation the rights to
62+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
63+
of the Software, and to permit persons to whom the Software is furnished to do
64+
so, subject to the following conditions:
65+
66+
* Redistributions of source code must retain the above copyright notice,
67+
this list of conditions and the following disclaimers.
68+
69+
* Redistributions in binary form must reproduce the above copyright notice,
70+
this list of conditions and the following disclaimers in the
71+
documentation and/or other materials provided with the distribution.
72+
73+
* Neither the names of the LLVM Team, University of Illinois at
74+
Urbana-Champaign, nor the names of its contributors may be used to
75+
endorse or promote products derived from this Software without specific
76+
prior written permission.
77+
78+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
79+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
80+
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
81+
CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
82+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
83+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
84+
SOFTWARE.
85+
86+
==============================================================================
87+
88+
Copyright (c) 2009-2014 by the contributors listed in CREDITS.TXT
89+
90+
Permission is hereby granted, free of charge, to any person obtaining a copy
91+
of this software and associated documentation files (the "Software"), to deal
92+
in the Software without restriction, including without limitation the rights
93+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
94+
copies of the Software, and to permit persons to whom the Software is
95+
furnished to do so, subject to the following conditions:
96+
97+
The above copyright notice and this permission notice shall be included in
98+
all copies or substantial portions of the Software.
99+
100+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
101+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
102+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
103+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
104+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
105+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
106+
THE SOFTWARE.
107+
108+

CMakeLists.txt

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#-------------------------------------------------------------------------------------------
2+
# Copyright (C) Electronic Arts Inc. All rights reserved.
3+
#-------------------------------------------------------------------------------------------
4+
5+
#-------------------------------------------------------------------------------------------
6+
# Library definition
7+
#-------------------------------------------------------------------------------------------
8+
file(GLOB EASTL_SOURCES "source/*.cpp")
9+
add_library(EASTL ${EASTL_SOURCES})
10+
11+
#-------------------------------------------------------------------------------------------
12+
# Include dirs
13+
#-------------------------------------------------------------------------------------------
14+
target_include_directories(EASTL PUBLIC include)
15+
target_link_libraries(EASTL EABase)
16+

CONTRIBUTING.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
## Contributing
2+
3+
Before you can contribute, EA must have a Contributor License Agreement (CLA) on file that has been signed by each contributor.
4+
You can sign here: [Go to CLA](https://goo.gl/KPylZ3)
5+
6+
### Pull Request Policy
7+
8+
All code contributions to EASTL are submitted as [Github pull requests](https://help.github.com/articles/using-pull-requests/). All pull requests will be reviewed by an EASTL maintainer according to the guidelines found in the next section.
9+
10+
Your pull request should:
11+
12+
* merge cleanly
13+
* come with tests
14+
* tests should be minimal and stable
15+
* fail before your fix is applied
16+
* pass the test suite
17+
* code formatting is encoded in clang format
18+
* limit using clang format on new code
19+
* do not deviate from style already established in the files
20+
21+
22+
### Running the Unit Tests
23+
24+
EASTL uses CMake as its build system.
25+
26+
* Generate build scripts:
27+
* cmake -Byour_build_folder -H.
28+
* Navigate to "your_build_folder"
29+
* Build unit tests for "your_config":
30+
* cmake --build . --config your_config
31+
* Run the unit tests for "your_config":
32+
* ctest -C your_config
33+

LICENCE

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
/*
2+
Copyright (C) 2015 Electronic Arts Inc. All rights reserved.
3+
4+
Redistribution and use in source and binary forms, with or without
5+
modification, are permitted provided that the following conditions
6+
are met:
7+
8+
1. Redistributions of source code must retain the above copyright
9+
notice, this list of conditions and the following disclaimer.
10+
2. Redistributions in binary form must reproduce the above copyright
11+
notice, this list of conditions and the following disclaimer in the
12+
documentation and/or other materials provided with the distribution.
13+
3. Neither the name of Electronic Arts, Inc. ("EA") nor the names of
14+
its contributors may be used to endorse or promote products derived
15+
from this software without specific prior written permission.
16+
17+
THIS SOFTWARE IS PROVIDED BY ELECTRONIC ARTS AND ITS CONTRIBUTORS "AS IS" AND ANY
18+
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19+
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20+
DISCLAIMED. IN NO EVENT SHALL ELECTRONIC ARTS OR ITS CONTRIBUTORS BE LIABLE FOR ANY
21+
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
22+
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
23+
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
24+
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26+
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27+
*/

README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# EA Standard Template Library
2+
3+
EASTL stands for Electronic Arts Standard Template Library. It is a C++ template library of containers, algorithms, and iterators useful for runtime and tool development across multiple platforms. It is a fairly extensive and robust implementation of such a library and has an emphasis on high performance above all other considerations.
4+
5+
6+
## Usage
7+
8+
If you are familiar with the C++ STL or have worked with other templated container/algorithm libraries, you probably don't need to read this. If you have no familiarity with C++ templates at all, then you probably will need more than this document to get you up to speed. In this case you need to understand that templates, when used properly, are powerful vehicles for the ease of creation of optimized C++ code. A description of C++ templates is outside the scope of this documentation, but there is plenty of such documentation on the Interent.
9+
10+
EASTL is suitable in any tools and shipping applications where the functionality of EASTL is useful. Modern compilers are capable of producing good code with templates and many people are using them in both current generation and future generation applications on multiple platforms from embedded systems to servers and mainframes.
11+
12+
13+
## Credits
14+
15+
EASTL was created by Paul Pedriana and he maintained the project for roughly 10 years.
16+
17+
Roberto Parolin is the current EASTL owner within EA and is responsible for the open source repository.
18+
19+
Significant EASTL contributions were made by (in alphabetical order):
20+
21+
* Avery Lee
22+
* Colin Andrews
23+
* JP Flouret
24+
* Matt Newport
25+
* Paul Pedriana
26+
* Roberto Parolin
27+
* Simon Everett
28+
29+
30+
## License
31+
32+
Modified BSD Licence (3-Clause BSD license) see the file LICENCE in the project root.

_clang-format

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-
2+
Language : Cpp
3+
BasedOnStyle : Google
4+
Standard : Auto
5+
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-
6+
AccessModifierOffset : -4
7+
AlignTrailingComments : true
8+
AllowAllParametersOfDeclarationOnNextLine : false
9+
AllowShortBlocksOnASingleLine : true
10+
AllowShortFunctionsOnASingleLine : true
11+
AllowShortIfStatementsOnASingleLine : false
12+
AllowShortLoopsOnASingleLine : false
13+
BinPackParameters : false
14+
BreakBeforeBraces : Allman
15+
BreakBeforeTernaryOperators : false
16+
BreakConstructorInitializersBeforeComma : true
17+
ColumnLimit : 120
18+
Cpp11BracedListStyle : true
19+
DerivePointerAlignment : true
20+
DerivePointerBinding : false
21+
IndentWidth : 4
22+
KeepEmptyLinesAtTheStartOfBlocks : true
23+
MaxEmptyLinesToKeep : 2
24+
NamespaceIndentation : Inner
25+
PointerBindsToType : true
26+
SpacesBeforeTrailingComments : 1
27+
SpacesInAngles : false
28+
SpacesInSquareBrackets : false
29+
TabWidth : 4
30+
UseTab : ForIndentation
31+
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-

0 commit comments

Comments
 (0)