Skip to content
This repository was archived by the owner on Aug 2, 2022. It is now read-only.

Partition libs#405

Merged
larryk85 merged 18 commits intodevelopfrom
partition_libs
Feb 8, 2019
Merged

Partition libs#405
larryk85 merged 18 commits intodevelopfrom
partition_libs

Conversation

@larryk85
Copy link
Copy Markdown
Contributor

@larryk85 larryk85 commented Feb 4, 2019

The PR partitions eosiolib into Core, Contracts and CAPI. To ensure backwards compatibility, the whole of eosiolib is still accessible from #include <eosiolib/header_file.h/hpp>. If you include one of these header files you will be given a warning stating that that particular header file is deprecated and what to replace it with. For the header files in CAPI, an additional message is given stating that these will no longer be accessible from a C++ smart contract after v1.7.0. All uses of the CAPI in the C++ API are namespaced with internal_use_do_not_use this should be a very clear indicator to users that the CAPI should not be accessed. Furthermore, only certain groups of header files are accessible given particular compilation modes. The CAPI is only accessible now through eosio-cc, the Contracts API will only be available to eosio-cpp compiling for EOSIO smart contracts and Core API is available to any "target", eosio-cpp in native mode, i.e. unit tests, will have access to all current and future API groups. Going forward instead of #include <eosiolib/header.hpp>, the pattern will be #include <eosio/header.hpp>, this is the same for the native tester, which will now be #include <eosio/tester.hpp> instead of #include <eosio/native/tester.hpp>.

Division of APIs

CAPI

  • action.h
  • chain.h
  • crypto.h
  • db.h
  • permission.h
  • print.h
  • privileged.h
  • system.h
  • transaction.h
  • types.h

Core

  • asset.hpp
  • binary_extension.hpp
  • crypto.hpp
  • datastream.hpp
  • fixed_bytes.hpp
  • ignore.hpp
  • name.hpp
  • print.hpp
  • rope.hpp
  • serialize.hpp
  • symbol.hpp
  • system.hpp
  • time.hpp
  • varint.hpp

Contracts

  • action.hpp
  • contract.hpp
  • dispatcher.hpp
  • eosio.hpp
  • multi_index.hpp
  • permission.hpp
  • privileged.hpp
  • producer_schedule.hpp
  • singleton.hpp
  • transaction.hpp

@larryk85 larryk85 requested a review from arhag February 4, 2019 14:35
Comment thread libraries/eosiolib/capi/eosio/action.h Outdated
Comment thread libraries/eosiolib/contracts/eosio/permission.hpp Outdated
Comment thread libraries/eosiolib/core/eosio/ignore.hpp Outdated
Comment thread libraries/eosiolib/core/eosio/print.hpp
Comment thread libraries/eosiolib/contracts/eosio/permission.hpp
Comment thread libraries/eosiolib/core/eosio/time.hpp Outdated
Comment thread libraries/eosiolib/core/eosio/time.hpp Outdated
Comment thread libraries/eosiolib/core/eosio/time.hpp Outdated
Comment thread libraries/eosiolib/core/eosio/system.hpp Outdated
Comment thread libraries/eosiolib/core/eosio/varint.hpp
Comment thread libraries/eosiolib/eosiolib.cpp Outdated
Comment thread libraries/eosiolib/eosiolib.cpp Outdated
Comment thread libraries/eosiolib/contracts/eosio/privileged.hpp Outdated
Comment thread libraries/eosiolib/contracts/eosio/permission.hpp
Comment thread libraries/eosiolib/contracts/eosio/permission.hpp Outdated
Comment thread libraries/eosiolib/contracts/eosio/permission.hpp
Comment thread libraries/eosiolib/core/eosio/print.hpp
Comment thread libraries/eosiolib/eosiolib.cpp Outdated
Comment thread libraries/eosiolib/contracts/eosio/privileged.hpp Outdated
Comment thread libraries/eosiolib/contracts/eosio/permission.hpp
@larryk85 larryk85 merged commit 6d8c30c into develop Feb 8, 2019
@larryk85 larryk85 deleted the partition_libs branch February 8, 2019 00:17
rise-worlds pushed a commit to potato-coin/eosio.cdt that referenced this pull request Jul 14, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants