Browse Source

lang: add owner and lamports methods to account types (#1267)

udbhav1 3 years ago
parent
commit
77043131c2
1 changed files with 8 additions and 8 deletions
  1. 8 8
      lang/syn/src/codegen/accounts/constraints.rs

+ 8 - 8
lang/syn/src/codegen/accounts/constraints.rs

@@ -252,7 +252,7 @@ pub fn generate_constraint_owner(f: &Field, c: &ConstraintOwner) -> proc_macro2:
     let owner_address = &c.owner_address;
     let error = generate_custom_error(&c.error, quote! { ConstraintOwner });
     quote! {
-        if #ident.to_account_info().owner != &#owner_address {
+        if #ident.as_ref().owner != &#owner_address {
             return Err(#error);
         }
     }
@@ -441,7 +441,7 @@ pub fn generate_init(
             );
             quote! {
                 let #field: #ty_decl = {
-                    if !#if_needed || #field.to_account_info().owner == &anchor_lang::solana_program::system_program::ID {
+                    if !#if_needed || #field.as_ref().owner == &anchor_lang::solana_program::system_program::ID {
                         // Define payer variable.
                         #payer
 
@@ -461,7 +461,7 @@ pub fn generate_init(
                     }
 
                     let pa: #ty_decl = #from_account_info;
-                    if !(!#if_needed || #field.to_account_info().owner == &anchor_lang::solana_program::system_program::ID) {
+                    if !(!#if_needed || #field.as_ref().owner == &anchor_lang::solana_program::system_program::ID) {
                         if pa.mint != #mint.key() {
                             return Err(anchor_lang::__private::ErrorCode::ConstraintTokenMint.into());
                         }
@@ -476,7 +476,7 @@ pub fn generate_init(
         InitKind::AssociatedToken { owner, mint } => {
             quote! {
                 let #field: #ty_decl = {
-                    if !#if_needed || #field.to_account_info().owner == &anchor_lang::solana_program::system_program::ID {
+                    if !#if_needed || #field.as_ref().owner == &anchor_lang::solana_program::system_program::ID {
                         #payer
 
                         let cpi_program = associated_token_program.to_account_info();
@@ -493,7 +493,7 @@ pub fn generate_init(
                         anchor_spl::associated_token::create(cpi_ctx)?;
                     }
                     let pa: #ty_decl = #from_account_info;
-                    if !(!#if_needed || #field.to_account_info().owner == &anchor_lang::solana_program::system_program::ID) {
+                    if !(!#if_needed || #field.as_ref().owner == &anchor_lang::solana_program::system_program::ID) {
                         if pa.mint != #mint.key() {
                             return Err(anchor_lang::__private::ErrorCode::ConstraintTokenMint.into());
                         }
@@ -526,7 +526,7 @@ pub fn generate_init(
             };
             quote! {
                 let #field: #ty_decl = {
-                    if !#if_needed || #field.to_account_info().owner == &anchor_lang::solana_program::system_program::ID {
+                    if !#if_needed || #field.as_ref().owner == &anchor_lang::solana_program::system_program::ID {
                         // Define payer variable.
                         #payer
 
@@ -543,7 +543,7 @@ pub fn generate_init(
                         anchor_spl::token::initialize_mint(cpi_ctx, #decimals, &#owner.key(), #freeze_authority)?;
                     }
                     let pa: #ty_decl = #from_account_info;
-                    if !(!#if_needed || #field.to_account_info().owner == &anchor_lang::solana_program::system_program::ID) {
+                    if !(!#if_needed || #field.as_ref().owner == &anchor_lang::solana_program::system_program::ID) {
                         if pa.mint_authority != anchor_lang::solana_program::program_option::COption::Some(#owner.key()) {
                             return Err(anchor_lang::__private::ErrorCode::ConstraintMintMintAuthority.into());
                         }
@@ -754,7 +754,7 @@ pub fn generate_constraint_state(f: &Field, c: &ConstraintState) -> proc_macro2:
         if #ident.key() != anchor_lang::accounts::cpi_state::CpiState::<#account_ty>::address(&#program_target.key()) {
             return Err(anchor_lang::__private::ErrorCode::ConstraintState.into());
         }
-        if #ident.to_account_info().owner != &#program_target.key() {
+        if #ident.as_ref().owner != &#program_target.key() {
             return Err(anchor_lang::__private::ErrorCode::ConstraintState.into());
         }
     }