Mads
Multi-Agent Distributed System
Loading...
Searching...
No Matches
Mads::PluginMigrate Namespace Reference

Classes

struct  Change
 
struct  FileReport
 
struct  MethodTransform
 
struct  Migration
 
struct  Options
 
class  SignatureRewriter
 
class  SpanRewriter
 
class  TreeSitterRewriter
 

Typedefs

using json = nlohmann::json
 

Enumerations

enum class  LexState {
  Code , Line , Block , Str ,
  Chr
}
 

Functions

bool read_file (const fs::path &p, std::string &out)
 
bool write_file (const fs::path &p, const std::string &content)
 
std::size_t line_of_offset (const std::string &s, std::size_t off)
 
bool is_ident_char (char c)
 
int run_command (const std::string &cmd, std::string &output)
 
std::size_t find_matching_paren (const std::string &s, std::size_t open)
 
std::unique_ptr< SignatureRewritermake_rewriter (const MethodTransform &t)
 
int apply_literal (std::string &src, const std::string &find, const std::string &replace, const std::string &desc, std::vector< Change > &out)
 
int apply_regex (std::string &src, const std::string &pattern, const std::string &replacement, const std::string &flags, const std::string &desc, std::vector< Change > &out)
 
int detect_protocol (const std::string &cmake)
 
int bump_git_tag (std::string &cmake, const std::string &block, const std::string &new_tag, std::vector< Change > &out)
 
std::map< int, Migrationload_migrations (const fs::path &dir)
 
void apply_source_transforms (const json &step, FileReport &fr)
 
void apply_cmake_transforms (const json &step, FileReport &cmake)
 
int run (const fs::path &project_dir, const fs::path &migrations_dir, const fs::path &deps_manifest, const Options &opts)
 

Typedef Documentation

◆ json

using Mads::PluginMigrate::json = typedef nlohmann::json

Definition at line 47 of file plugin_migrate.hpp.

Enumeration Type Documentation

◆ LexState

enum class Mads::PluginMigrate::LexState
strong
Enumerator
Code 
Line 
Block 
Str 
Chr 

Definition at line 118 of file plugin_migrate.hpp.

Function Documentation

◆ apply_cmake_transforms()

void Mads::PluginMigrate::apply_cmake_transforms ( const json step,
FileReport cmake 
)
inline

◆ apply_literal()

int Mads::PluginMigrate::apply_literal ( std::string &  src,
const std::string &  find,
const std::string &  replace,
const std::string &  desc,
std::vector< Change > &  out 
)
inline

Definition at line 395 of file plugin_migrate.hpp.

References line_of_offset().

Referenced by apply_source_transforms().

◆ apply_regex()

int Mads::PluginMigrate::apply_regex ( std::string &  src,
const std::string &  pattern,
const std::string &  replacement,
const std::string &  flags,
const std::string &  desc,
std::vector< Change > &  out 
)
inline

Definition at line 409 of file plugin_migrate.hpp.

Referenced by apply_cmake_transforms(), and apply_source_transforms().

◆ apply_source_transforms()

◆ bump_git_tag()

int Mads::PluginMigrate::bump_git_tag ( std::string &  cmake,
const std::string &  block,
const std::string &  new_tag,
std::vector< Change > &  out 
)
inline

Definition at line 448 of file plugin_migrate.hpp.

References line_of_offset().

Referenced by apply_cmake_transforms().

◆ detect_protocol()

int Mads::PluginMigrate::detect_protocol ( const std::string &  cmake)
inline

Definition at line 429 of file plugin_migrate.hpp.

Referenced by run().

◆ find_matching_paren()

std::size_t Mads::PluginMigrate::find_matching_paren ( const std::string &  s,
std::size_t  open 
)
inline

Definition at line 121 of file plugin_migrate.hpp.

References Block, Chr, Code, Line, and Str.

Referenced by Mads::PluginMigrate::SpanRewriter::rewrite_method().

◆ is_ident_char()

bool Mads::PluginMigrate::is_ident_char ( char  c)
inline

◆ line_of_offset()

std::size_t Mads::PluginMigrate::line_of_offset ( const std::string &  s,
std::size_t  off 
)
inline

◆ load_migrations()

std::map< int, Migration > Mads::PluginMigrate::load_migrations ( const fs::path &  dir)
inline

◆ make_rewriter()

std::unique_ptr< SignatureRewriter > Mads::PluginMigrate::make_rewriter ( const MethodTransform t)
inline

◆ read_file()

bool Mads::PluginMigrate::read_file ( const fs::path &  p,
std::string &  out 
)
inline

Definition at line 66 of file plugin_migrate.hpp.

Referenced by load_migrations(), and run().

◆ run()

◆ run_command()

int Mads::PluginMigrate::run_command ( const std::string &  cmd,
std::string &  output 
)
inline

Definition at line 94 of file plugin_migrate.hpp.

Referenced by run().

◆ write_file()

bool Mads::PluginMigrate::write_file ( const fs::path &  p,
const std::string &  content 
)
inline

Definition at line 76 of file plugin_migrate.hpp.

Referenced by run().